View difference between Paste ID: HTMmcP0f and 8xcuD0Vy
SHOW: | | - or go back to the newest paste.
1
local plr = game:GetService("Players").LocalPlayer
2
local char = plr.Character
3
4
function FindInTable(t, n)
5
	for i,v in pairs(t) do
6
		if v == n then
7
			return true
8
		end
9
	end
10
	return false
11
end
12
--Transformaaaaation--
13
char["Left Arm"].BrickColor = BrickColor.new("Pastel brown")
14
char["Right Arm"].BrickColor = BrickColor.new("Pastel brown")
15
char.Head.BrickColor = BrickColor.new("Pastel brown")
16
char["Left Leg"].BrickColor = BrickColor.new("Pastel brown")
17
char["Right Leg"].BrickColor = BrickColor.new("Pastel brown")
18
19
for i,v in pairs(char:children'') do
20
	local toremove = {"CharacterMesh", "Shirt", "Pants", "ShirtGraphic", "Accessory"}
21
	if FindInTable(toremove, v.ClassName) then v:Destroy() end
22
	if v.ClassName == "BodyColors" then
23
		v.HeadColor = BrickColor.new("Pastel brown")
24
		v.LeftArmColor = BrickColor.new("Pastel brown")
25
		v.LeftLegColor = BrickColor.new("Pastel brown")
26
		v.RightArmColor = BrickColor.new("Pastel brown")
27
		v.RightLegColor = BrickColor.new("Pastel brown")
28
		v.TorsoColor = BrickColor.new("Pastel brown")
29
	end
30
end
31
32
local face = char.Head:FindFirstChild'face' if face then face.Texture = "http://www.roblox.com/asset/?id=31117192" end
33
Instance.new("Shirt", char).ShirtTemplate = "http://www.roblox.com/asset/?id=812553202"
34
Instance.new("Pants", char).PantsTemplate = "http://www.roblox.com/asset/?id=772799671"
35
local function CreateHat(name, meshid, textureid)
36
	local h = Instance.new("Accessory")
37
	h.Name = name
38
	local han = Instance.new("Part", h)
39
	han.Name = "Handle"
40
	local mesh = Instance.new("SpecialMesh", han)
41
	mesh.Name = "Mesh"
42
	mesh.MeshId = meshid
43
	mesh.TextureId = textureid
44
	return h,han,mesh
45
end
46
hum = char:FindFirstChildOfClass'Humanoid'
47
local h,han,mesh = CreateHat("2LEGITOwl", "http://www.roblox.com/asset/?id=0", "http://www.roblox.com/asset/?id=0")
48
han.Size = Vector3.new(1, 1, 1)
49
mesh.Scale = Vector3.new(0.3, 0.3, 0.3)
50
h.AttachmentPos = Vector3.new(1.1, 0.38, 0)
51
hum:AddAccessory(h)
52
h,han,mesh = CreateHat("RobloxScarf", "http://www.roblox.com/asset/?id=0", "http://www.roblox.com/asset/?id=0")
53
mesh.Scale = Vector3.new(3, 3, 3)
54
han.Size = Vector3.new(1.9, 2, 2)
55
h.AttachmentPos = Vector3.new(0, 1.54, 0.1)
56
hum:AddAccessory(h)
57
h,han,mesh = CreateHat("Dapper Stan", "http://www.roblox.com/asset/?id=74879498", "http://www.roblox.com/asset/?id=74879471")
58
mesh.Scale = Vector3.new(1.05, 1.05, 1.05)
59
han.Size = Vector3.new(2, 2, 2)
60
hum:AddAccessory(h)
61
62
local s = Instance.new("Sound")
63
64
s,s2 = Instance.new('Sound'),Instance.new('Sound')
65
66
s.SoundId = "http://www.roblox.com/asset/?id=1362139713" -- Type your music ID here
67
s.Volume = 7 -- this is the Volume
68
s.Pitch = 1 -- tis is the pich
69
s.Looped = false
70
s.archivable = false
71
72
s.Parent = game.Workspace
73
74
wait(0)
75
76
s:play()
77
78-
s2.SoundId = "http://www.roblox.com/asset/?id=632007628" -- Type your music ID here
78+
s2.SoundId = "http://www.roblox.com/asset/?id=1280498161" -- Type your music ID here
79
s2.Volume = 0.7 -- this is the Volume
80
s2.Pitch = 1 -- tis is the pich
81
s2.Looped = true
82
s2.archivable = false
83
84
s2.Parent = game.Workspace
85
86
wait(9)
87
88
s2:play()
89
90
91
92
93
-- Made by 1ndrew
94
function sandbox(var,func)
95
	local env = getfenv(func)
96
	local newenv = setmetatable({},{
97
		__index = function(self,k)
98
			if k=="script" then
99
				return var
100
			else
101
				return env[k]
102
			end
103
		end,
104
	})
105
	setfenv(func,newenv)
106
	return func
107
end
108
cors = {}
109
mas = Instance.new("Model",game:GetService("Lighting"))
110
Tool0 = Instance.new("Tool")
111
LocalScript1 = Instance.new("LocalScript")
112
Part2 = Instance.new("Part")
113
LocalScript3 = Instance.new("LocalScript")
114
Sound4 = Instance.new("Sound")
115
Sound5 = Instance.new("Sound")
116
Animation6 = Instance.new("Animation")
117
SpecialMesh7 = Instance.new("SpecialMesh")
118
Script8 = Instance.new("Script")
119
LocalScript9 = Instance.new("LocalScript")
120
LocalScript10 = Instance.new("LocalScript")
121
Part11 = Instance.new("Part")
122
CylinderMesh12 = Instance.new("CylinderMesh")
123
Part13 = Instance.new("Part")
124
Weld14 = Instance.new("Weld")
125
CylinderMesh15 = Instance.new("CylinderMesh")
126
Part16 = Instance.new("Part")
127
CylinderMesh17 = Instance.new("CylinderMesh")
128
Part18 = Instance.new("Part")
129
CylinderMesh19 = Instance.new("CylinderMesh")
130
LocalScript20 = Instance.new("LocalScript")
131
Tool0.Name = "Brutal Stick"
132
Tool0.Parent = mas
133
Tool0.GripForward = Vector3.new(-0.425711513, 0.306347132, -0.851423025)
134
Tool0.GripPos = Vector3.new(0, -1.29999995, 0.100000001)
135
Tool0.GripRight = Vector3.new(0.89442718, 0, -0.44721359)
136
Tool0.GripUp = Vector3.new(0.137002602, 0.951919854, 0.274005204)
137
Tool0.ToolTip = "TIME TO DIE MOTHERFUCKERS"
138
LocalScript1.Name = "Aiming"
139
LocalScript1.Parent = Tool0
140
table.insert(cors,sandbox(LocalScript1,function()
141
wait()
142
Tool=script.Parent
143
CP,Torso,g=nil,nil,nil
144
armo1=CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
145
armo2=CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
146
getPos=function(Pos,TorsoPos)
147
	return Vector3.new(Pos.x,TorsoPos.y,Pos.z)
148
end
149
Turn=function(mouse,Torso,Gyro)
150
	g.cframe=CFrame.new(Torso.Position,getPos(mouse.Hit.p,Torso.Position))
151
	offset=(Torso.Position.y-mouse.Hit.p.y)/125
152
	mag=(Torso.Position-mouse.Hit.p).magnitude/125
153
	offset=offset/mag
154
	arm=Torso:FindFirstChild("Right Shoulder")
155
	arm2=Torso:FindFirstChild("Left Shoulder")
156
	if arm~=nil then
157
		arm.C0=CFrame.new(1, 0.5, 0, 0, 0, 1, -6.48200512e-007, 1.00000274, 0, -1.00000274, -6.48200512e-007, 0)*CFrame.fromEulerAnglesXYZ(0,0,-offset)
158
		arm2.C0=CFrame.new(-1, 0.5, 0, 0, 0, -1, -6.48200512e-007, 1.00000274, 0, 1.00000274, -6.48200512e-007, 0)*CFrame.fromEulerAnglesXYZ(0,0,offset)
159
	end
160
end
161
Equi=function(mouse)
162
	wait(.01)
163
	local vCharacter = Tool.Parent
164
	local hum = vCharacter:findFirstChild("Humanoid")
165
	blah = hum:LoadAnimation(Tool.Handle.Idle)
166
	blah:Play()
167
	CP=Tool.Parent
168
	Torso=CP.Torso
169
	g=Instance.new("BodyGyro")
170
	g.P=18000
171
	g.D=600
172
	g.maxTorque=Vector3.new(80000,80000000,80000)*50000000000000000000000000
173
	g.cframe=Torso.CFrame
174
	while true do
175
		if Tool.Parent.className~="Model" then
176
			break
177
		end
178
		Turn(mouse,Torso,g)
179
		wait()
180
	end
181
	blah:Stop()
182
	arm.C0=armo1
183
	arm2.C0=armo2
184
	g:Remove()
185
end
186
Tool.Equipped:connect(Equi)
187
188
end))
189
Part2.Name = "Handle"
190
Part2.Parent = Tool0
191
Part2.BrickColor = BrickColor.new("Dark stone grey")
192
Part2.Transparency = 1
193
Part2.FormFactor = Enum.FormFactor.Custom
194
Part2.Size = Vector3.new(0.200000003, 3.9199934, 0.829999506)
195
Part2.CFrame = CFrame.new(-8.29998779, 3.99999809, -84.0001221, 1, 0, 0, 0, 1, 0, 0, 0, 1)
196
Part2.BottomSurface = Enum.SurfaceType.Smooth
197
Part2.TopSurface = Enum.SurfaceType.Smooth
198
Part2.Color = Color3.new(0.388235, 0.372549, 0.384314)
199
Part2.Position = Vector3.new(-8.29998779, 3.99999809, -84.0001221)
200
Part2.Color = Color3.new(0.388235, 0.372549, 0.384314)
201
LocalScript3.Name = "MacheteScript"
202
LocalScript3.Parent = Part2
203
table.insert(cors,sandbox(LocalScript3,function()
204
local UTIL = {}
205
 
206
function UTIL.Class(tableIn,template)
207
        tableIn = tableIn or {}
208
        local mt = {
209
        __metatable = UTIL.DeepCopy(template);
210
        __index     = UTIL.DeepCopy(template);
211
        }
212
        return setmetatable(tableIn, mt)
213
end
214
function UTIL.MakeClass(...)
215
        local arg = {...}
216
        assert(#arg>0, 'ERROR: class needs 1 argument or more')
217
        local members = arg[1]
218
        for i=2,#arg,1 do
219
                if type(arg[i])=='table' then
220
                        for key,val in pairs(arg[i]) do
221
                                if not members[key] then
222
                                        members[key] = val
223
                                end
224
                        end
225
                end
226
        end
227
        local function New(init)
228
                return UTIL.Class(init or {},members)
229
        end
230
        local function Copy(obj, ...)
231
                local newobj = obj:New(unpack(arg))
232
                for n,v in pairs(obj) do newobj[n] = v end
233
                return newobj
234
        end
235
        members.New  = New
236
        members.Copy = Copy
237
        return mt
238
end
239
 
240
function UTIL.DeepCopy(orig)
241
    local orig_type = type(orig)
242
    local copy
243
    if orig_type == 'table' then
244
        copy = {}
245
        for orig_key, orig_value in next, orig, nil do
246
            copy[UTIL.DeepCopy(orig_key)] = UTIL.DeepCopy(orig_value)
247
        end
248
        setmetatable(copy, UTIL.DeepCopy(getmetatable(orig)))
249
    else 
250
        copy = orig
251
    end
252
    return copy
253
end
254
255
function UTIL.Instantiate(guiType)
256
	return function(data)
257
		local obj = Instance.new(guiType)
258
		for k, v in pairs(data) do
259
			if type(k) == 'number' then
260
				v.Parent = obj
261
			else
262
				obj[k] = v
263
			end
264
		end
265
		return obj
266
	end
267
end 
268
269
function UTIL.RetroRegister(func,...)
270
	func()
271
	for _,i in ipairs({...}) do
272
		i:connect(func)
273
	end
274
end
275
276
function UTIL.WaitForValidCharacter(player)
277
	local character = player.Character
278
	if not character or not character.Parent or not character:FindFirstChild('Humanoid') or character.Humanoid.Health <= 0 then
279
		player.CharacterAdded:wait()
280
		wait(0)
281
		character = player.Character
282
	end
283
	return character
284
end
285
286
function UTIL.FindCharacterAncestor(subject)
287
	if subject and subject ~= Workspace then
288
		local humanoid = subject:FindFirstChild('Humanoid')
289
		if humanoid then
290
			return subject, humanoid
291
		else
292
			return UTIL.FindCharacterAncestor(subject.Parent)
293
		end
294
	end
295
	return nil
296
end
297
298
UTIL.AssetURL = 'http://www.roblox.com/asset/?id='
299
300
301
UTIL.TouchEnabled = game:GetService("UserInputService").TouchEnabled 
302
do
303
	local suceeded,_ =pcall(function() game.Workspace.CurrentCamera:GetPanSpeed() end)
304
	UTIL.CanCheckPanSpeed = suceeded
305
end
306
307
308
local DebrisService = Game:GetService('Debris')
309
local DebugPrintOffset = 0
310
function UTIL.Dprint(...)
311
	local line = ''
312
	for _, segment in pairs({...}) do
313
		line = line .. (line and ' ' or '') .. tostring(segment)
314
	end
315
	local gui = Instance.new('ScreenGui')
316
	local label = Instance.new('TextLabel')
317
	label.Text = line
318
	label.Size = UDim2.new(0.25, 0, 0.05, 0)
319
	label.BackgroundTransparency = 0.5
320
	label.Position = UDim2.new(0, 0, 0, DebugPrintOffset)
321
	label.TextWrapped = true
322
	label.Parent = gui
323
	DebrisService:AddItem(gui, 30)
324
	gui.Parent = script.Parent
325
	DebugPrintOffset = (DebugPrintOffset <= 600) and DebugPrintOffset + 30 or 0
326
end
327
328
WeldUtil = {}
329
330
331
do
332
333
334
	function WeldUtil.WeldBetween(a, b)
335
		local weld = Instance.new("Weld")
336
		weld.Part0 = a
337
		weld.Part1 = b
338
		weld.C0 = CFrame.new()
339
		weld.C1 = b.CFrame:inverse() * a.CFrame
340
341
		weld.Parent = a
342
		return weld
343
	end
344
	
345
	function WeldUtil:PermaWeld(weld)
346
		local OriginalParent = weld.Parent
347
		weld.Changed:connect(function()
348
			Delay(0,function() weld.Parent = OriginalParent end)
349
		end)
350
	end
351
352
end
353
354
local InternalEvent =
355
{
356
	Listeners = nil,
357
}
358
do
359
	UTIL.MakeClass(InternalEvent)
360
	function InternalEvent:Connect(func)
361
		if not self.Listeners then self.Listeners = {} end
362
		table.insert(self.Listeners,func)
363
	end
364
	function InternalEvent:Fire(...)
365
		if not self.Listeners then return end
366
		local args = {...}
367
		for _,i in ipairs(self.Listeners) do
368
			Spawn(function() i(unpack(args)) end)
369
		end
370
	end
371
end
372
373
374
	
375
local SwordPart =
376
{
377
	Damage = 25,
378
	AttackTime = 1,
379
	CoolDown = 0.1,
380
	
381
	LastSwing = 0,
382
	LastHit = 0,
383
384
	Part= nil,
385
	Owner = nil,
386
	
387
	OnHit = nil,
388
	OnHitHumanoid = nil,
389
	OnAttackReady = nil,
390
	OnAttack = nil,
391
	
392
	
393
	SwingSound = nil,
394
	HitSound = nil,
395
	SwingAnimation = nil, 
396
	
397
	ActiveConnections = {},
398
	
399
}
400
do
401
	UTIL.MakeClass(SwordPart)
402
	function SwordPart.New(npart,nowner)
403
		local init= UTIL.DeepCopy(SwordPart)
404
		init.Part= npart
405
		init.Owner = nowner
406
		table.insert(init.ActiveConnections,init.Part.Touched:connect(function(hit) init:SwordTouch(hit) end))
407
		
408
		init.OnHit = InternalEvent.New()
409
		init.OnHitHumanoid = InternalEvent.New()
410
		init.OnAttackReady = InternalEvent.New()
411
		init.OnAttack = InternalEvent.New()
412
		
413
		return init
414
	end
415
	
416
	function SwordPart:SwordTouch(hit)
417
		if tick()-self.LastSwing >self.AttackTime or tick()-self.LastHit<self.AttackTime then return end
418
		self.OnHit:Fire(hit)
419
		local character,humanoid = UTIL.FindCharacterAncestor(hit)
420
		if character and character ~= self.Owner.Character then
421
			humanoid:TakeDamage(self.Damage)
422
			self.OnHitHumanoid:Fire(humanoid,hit)
423
			self.LastHit = tick()
424
			if self.HitSound then
425
				self.HitSound:Play()
426
			end
427
		end
428
		
429
	end
430
	
431
	function SwordPart:DoSwing()
432
		if tick()-self.LastSwing<self.AttackTime+self.CoolDown then
433
			return
434
		end
435
		
436
		if self.SwingAnimation then
437
			self.SwingAnimation:Play(.1,1,1.5)
438
		end
439
		if self.SwingSound then
440
			self.SwingSound:Play()
441
		end
442
		self.LastSwing = tick()
443
		self.OnAttack:Fire()
444
	end
445
	
446
	function SwordPart:Destroy()
447
		for _,i in pairs(self.ActiveConnections) do
448
			i:disconnect()
449
		end
450
	end
451
end
452
do
453
	local Handle = script.Parent
454
	local Tool = Handle.Parent
455
	
456
	local Player = game.Players.LocalPlayer
457
	local Character = UTIL.WaitForValidCharacter(Player)
458
	local SwingAni = UTIL.Instantiate"Animation"
459
	{AnimationId = "http://www.roblox.com/Asset?ID=89289879"}
460
	
461
	local HitSound = Handle:WaitForChild('Hit')
462
	local SwingSound = Handle:WaitForChild('Swing')
463
	
464
	local SwingAniTrack
465
	
466
	local Sword
467
	
468
	
469
	Tool.Equipped:connect(function(mouse)
470
		Sword = SwordPart.New(Handle,Player)
471
		Sword.Damage = 40
472
		Sword.HitSound = HitSound
473
		Sword.SwingSound = SwingSound
474
		Character = UTIL.WaitForValidCharacter(Player)
475
		local Humanoid = Character:FindFirstChild('Humanoid')
476
477
		SwingAniTrack = Humanoid:LoadAnimation(SwingAni)
478
		Sword.SwingAnimation = SwingAniTrack
479
		
480
		Sword.OnHitHumanoid:Connect(function(humanoid,hit)
481
			local myTorso = Character:FindFirstChild('Torso')
482
			local torso = humanoid.Parent:FindFirstChild('Torso')
483
			if not torso or not myTorso then return end
484
			
485
			if hit.Name=='Right Arm' or hit.Name=='Left Arm' or hit.Name=='Right Leg' or hit.Name=='Left Leg' then
486
				hit:BreakJoints()
487
				WeldUtil.WeldBetween(hit, Handle)
488
				Delay(1,function() hit:BreakJoints() end )
489
			end
490
		end)
491
		
492
		mouse.Button1Down:connect(function()
493
			Sword:DoSwing()
494
		end)
495
	end)
496
	Tool.Unequipped:connect(function()
497
		Sword:Destroy()
498
	end)
499
500
end
501
502
end))
503
Sound4.Name = "Hit"
504
Sound4.Parent = Part2
505
Sound4.Pitch = 0.69999998807907
506
Sound4.SoundId = "http://www.roblox.com/Asset?ID=123252378"
507
Sound4.Volume = 1
508
Sound5.Name = "Swing"
509
Sound5.Parent = Part2
510
Sound5.SoundId = "rbxasset://sounds/swordslash.wav"
511
Sound5.Volume = 1
512
Animation6.Name = "Idle"
513
Animation6.Parent = Part2
514
Animation6.AnimationId = "http://www.roblox.com/Asset?ID=75522566"
515
SpecialMesh7.Parent = Part2
516
SpecialMesh7.MeshId = "http://www.roblox.com/asset/?id=123248347"
517
SpecialMesh7.Scale = Vector3.new(0.400000006, 0.400000006, 0.400000006)
518
SpecialMesh7.TextureId = "http://www.roblox.com/asset/?id=123248449"
519
SpecialMesh7.MeshType = Enum.MeshType.FileMesh
520
SpecialMesh7.Scale = Vector3.new(0.400000006, 0.400000006, 0.400000006)
521
Script8.Name = "qPerfectionWeld"
522
Script8.Parent = Tool0
523
table.insert(cors,sandbox(Script8,function()
524
525
526
local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
527
528
529
local function CallOnChildren(Instance, FunctionToCall)
530
	-- Calls a function on each of the children of a certain object, using recursion.  
531
532
	FunctionToCall(Instance)
533
534
	for _, Child in next, Instance:GetChildren() do
535
		CallOnChildren(Child, FunctionToCall)
536
	end
537
end
538
539
local function GetNearestParent(Instance, ClassName)
540
	-- Returns the nearest parent of a certain class, or returns nil
541
542
	local Ancestor = Instance
543
	repeat
544
		Ancestor = Ancestor.Parent
545
		if Ancestor == nil then
546
			return nil
547
		end
548
	until Ancestor:IsA(ClassName)
549
550
	return Ancestor
551
end
552
553
local function GetBricks(StartInstance)
554
	local List = {}
555
556
	-- if StartInstance:IsA("BasePart") then
557
	-- 	List[#List+1] = StartInstance
558
	-- end
559
560
	CallOnChildren(StartInstance, function(Item)
561
		if Item:IsA("BasePart") then
562
			List[#List+1] = Item;
563
		end
564
	end)
565
566
	return List
567
end
568
569
local function Modify(Instance, Values)
570
	-- Modifies an Instance by using a table.  
571
572
	assert(type(Values) == "table", "Values is not a table");
573
574
	for Index, Value in next, Values do
575
		if type(Index) == "number" then
576
			Value.Parent = Instance
577
		else
578
			Instance[Index] = Value
579
		end
580
	end
581
	return Instance
582
end
583
584
local function Make(ClassType, Properties)
585
	-- Using a syntax hack to create a nice way to Make new items.  
586
587
	return Modify(Instance.new(ClassType), Properties)
588
end
589
590
local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
591
local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
592
593
local function HasWheelJoint(Part)
594
	for _, SurfaceName in pairs(Surfaces) do
595
		for _, HingSurfaceName in pairs(HingSurfaces) do
596
			if Part[SurfaceName].Name == HingSurfaceName then
597
				return true
598
			end
599
		end
600
	end
601
	
602
	return false
603
end
604
605
local function ShouldBreakJoints(Part)
606
	--- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
607
	--  definitely some edge cases. 
608
609
	if NEVER_BREAK_JOINTS then
610
		return false
611
	end
612
	
613
	if HasWheelJoint(Part) then
614
		return false
615
	end
616
	
617
	local Connected = Part:GetConnectedParts()
618
	
619
	if #Connected == 1 then
620
		return false
621
	end
622
	
623
	for _, Item in pairs(Connected) do
624
		if HasWheelJoint(Item) then
625
			return false
626
		elseif not Item:IsDescendantOf(script.Parent) then
627
			return false
628
		end
629
	end
630
	
631
	return true
632
end
633
634
local function WeldTogether(Part0, Part1, JointType, WeldParent)
635
	
636
637
	JointType = JointType or "Weld"
638
	local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
639
	
640
	local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
641
	Modify(NewWeld, {
642
		Name = "qCFrameWeldThingy";
643
		Part0  = Part0;
644
		Part1  = Part1;
645
		C0     = CFrame.new();--Part0.CFrame:inverse();
646
		C1     = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
647
		Parent = Part1;
648
	})
649
650
	if not RelativeValue then
651
		RelativeValue = Make("CFrameValue", {
652
			Parent     = Part1;
653
			Name       = "qRelativeCFrameWeldValue";
654
			Archivable = true;
655
			Value      = NewWeld.C1;
656
		})
657
	end
658
659
	return NewWeld
660
end
661
662
local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
663
	
664
	
665
	for _, Part in pairs(Parts) do
666
		if ShouldBreakJoints(Part) then
667
			Part:BreakJoints()
668
		end
669
	end
670
	
671
	for _, Part in pairs(Parts) do
672
		if Part ~= MainPart then
673
			WeldTogether(MainPart, Part, JointType, MainPart)
674
		end
675
	end
676
677
	if not DoNotUnanchor then
678
		for _, Part in pairs(Parts) do
679
			Part.Anchored = false
680
		end
681
		MainPart.Anchored = false
682
	end
683
end
684
685
local function PerfectionWeld()	
686
	local Tool = GetNearestParent(script, "Tool")
687
688
	local Parts = GetBricks(script.Parent)
689
	local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
690
691
	if PrimaryPart then
692
		WeldParts(Parts, PrimaryPart, "Weld", false)
693
	else
694
		warn("qWeld - Unable to weld part")
695
	end
696
	
697
	return Tool
698
end
699
700
local Tool = PerfectionWeld()
701
702
703
if Tool and script.ClassName == "Script" then
704
	--- Don't bother with local scripts
705
706
	script.Parent.AncestryChanged:connect(function()
707
		PerfectionWeld()
708
	end)
709
end
710
711
712
end))
713
LocalScript9.Name = "Arms"
714
LocalScript9.Parent = Tool0
715
table.insert(cors,sandbox(LocalScript9,function()
716
Tool = script.Parent
717
local arms = nil
718
local torso = nil
719
local fakearms = {}
720
local welds = {}
721
722
function Equip(mouse)
723
	wait(0.01)
724
	arms = {Tool.Parent:FindFirstChild("Left Arm"), Tool.Parent:FindFirstChild("Right Arm")}
725
	torso = Tool.Parent:FindFirstChild("Torso")
726
	model = Instance.new("Model", workspace)
727
	model.Name = "Arms"
728
	humanoid = Instance.new("Humanoid", model)
729
	humanoid.Name = "ArmHumanoid"
730
	local Link = Instance.new("ObjectValue",model)
731
	Link.Name, Link.Value = "HumanoidLink", torso.Parent.Humanoid
732
	if Tool.Parent:FindFirstChild("Shirt") then
733
		Tool.Parent.Shirt:Clone().Parent = model
734
	end
735
	for n,v in ipairs(arms) do
736
		local P = v:Clone()
737
		P.Parent = model
738
		P.TopSurface, P.BottomSurface = "Smooth", "Smooth"
739
		local PW = Instance.new("Weld")
740
		PW.Name = "FakeArmWeld"
741
		PW.Parent = v
742
		PW.Part0, PW.Part1, PW.C0, PW.C1 = v, P, v.CFrame:inverse(), P.CFrame:inverse()
743
		v.Transparency = 1
744
		fakearms[n] = P
745
	end
746
	fakearms[2].RightGrip:Destroy()
747
	mouse.TargetFilter = model
748
end
749
750
function Unequip(mouse)
751
	model:Destroy()
752
	for n,v in ipairs(arms) do
753
		v.Transparency = 0
754
	end
755
end
756
757
Tool.Equipped:connect(Equip)
758
Tool.Unequipped:connect(Unequip)
759
760
end))
761
LocalScript10.Name = "Weld"
762
LocalScript10.Parent = Tool0
763
table.insert(cors,sandbox(LocalScript10,function()
764
765
function Weld(x,y)
766
	local W = Instance.new("Weld")
767
	W.Part0 = x
768
	W.Part1 = y
769
	local CJ = CFrame.new(x.Position)
770
	local C0 = x.CFrame:inverse()*CJ
771
	local C1 = y.CFrame:inverse()*CJ
772
	W.C0 = C0
773
	W.C1 = C1
774
	W.Parent = x
775
end
776
777
function SimpleWeld(x,y)
778
	local W = Instance.new("Weld")
779
	W.Part0 = x
780
	W.Part1 = y
781
	W.Parent = x
782
end
783
784
function Get(A)
785
	if A:IsA("BasePart") then
786
		if A.Name == "HammerRotation" then
787
			SimpleWeld(script.Parent.HammerAttachment, A)
788
			A.Anchored = false
789
		elseif A.Name == "Hammer" then
790
			Weld(script.Parent.HammerRotation, A)
791
			A.Anchored = false
792
		elseif A.Name == "FrizzenRotation" then
793
			SimpleWeld(script.Parent.FrizzenAttachment, A)
794
			A.Anchored = false
795
		elseif A.Name == "Frizzen" then
796
			Weld(script.Parent.FrizzenRotation, A)
797
			A.Anchored = false
798
		else
799
			Weld(script.Parent.Handle, A)
800
			A.Anchored = false
801
		end
802
	else
803
		local C = A:GetChildren()
804
		for i=1, #C do
805
		Get(C[i])
806
		end
807
	end
808
end
809
810
function Finale()
811
	Get(script.Parent)
812
end
813
814
815
end))
816
Part11.Name = "Grip"
817
Part11.Parent = Tool0
818
Part11.Material = Enum.Material.Wood
819
Part11.BrickColor = BrickColor.new("Pine Cone")
820
Part11.Rotation = Vector3.new(-180, 0, -180)
821
Part11.CanCollide = false
822
Part11.FormFactor = Enum.FormFactor.Custom
823
Part11.Size = Vector3.new(0.249733165, 0.249733493, 0.249733463)
824
Part11.CFrame = CFrame.new(-8.40885925, 3.84257984, -83.8658752, -1, 0, 0, 0, 1, 0, 0, 0, -1)
825
Part11.BottomSurface = Enum.SurfaceType.Smooth
826
Part11.TopSurface = Enum.SurfaceType.Smooth
827
Part11.Color = Color3.new(0.423529, 0.345098, 0.294118)
828
Part11.Position = Vector3.new(-8.40885925, 3.84257984, -83.8658752)
829
Part11.Orientation = Vector3.new(0, 180, 0)
830
Part11.Color = Color3.new(0.423529, 0.345098, 0.294118)
831
CylinderMesh12.Parent = Part11
832
CylinderMesh12.Scale = Vector3.new(0.947650433, 0.0557441823, 0.947649717)
833
CylinderMesh12.Scale = Vector3.new(0.947650433, 0.0557441823, 0.947649717)
834
Part13.Name = "Wood"
835
Part13.Parent = Tool0
836
Part13.Material = Enum.Material.Wood
837
Part13.BrickColor = BrickColor.new("Pine Cone")
838
Part13.CanCollide = false
839
Part13.FormFactor = Enum.FormFactor.Custom
840
Part13.Size = Vector3.new(0.249733165, 1.12017298, 0.249733463)
841
Part13.CFrame = CFrame.new(-8.40727234, 3.08049679, -83.8654633, 1, 0, 0, 0, 1, 0, 0, 0, 1)
842
Part13.BottomSurface = Enum.SurfaceType.Smooth
843
Part13.TopSurface = Enum.SurfaceType.Smooth
844
Part13.Color = Color3.new(0.423529, 0.345098, 0.294118)
845
Part13.Position = Vector3.new(-8.40727234, 3.08049679, -83.8654633)
846
Part13.Color = Color3.new(0.423529, 0.345098, 0.294118)
847
Weld14.Parent = Part13
848
Weld14.C0 = CFrame.new(0, 0, 0, 1.10826505e-07, -1, 1.24278703e-08, 2.08616228e-07, -1.24278472e-08, -1, 1, 1.10826505e-07, 2.08616228e-07)
849
Weld14.C1 = CFrame.new(0, 0, 0, 1.10826505e-07, -1, 1.24278703e-08, 2.08616228e-07, -1.24278472e-08, -1, 1, 1.10826505e-07, 2.08616228e-07)
850
CylinderMesh15.Parent = Part13
851
CylinderMesh15.Scale = Vector3.new(0.869548976, 1, 0.869550526)
852
CylinderMesh15.Scale = Vector3.new(0.869548976, 1, 0.869550526)
853
Part16.Name = "Metal"
854
Part16.Parent = Tool0
855
Part16.Material = Enum.Material.Wood
856
Part16.BrickColor = BrickColor.new("Beige")
857
Part16.Rotation = Vector3.new(0, -90, 0)
858
Part16.CanCollide = false
859
Part16.FormFactor = Enum.FormFactor.Custom
860
Part16.Size = Vector3.new(0.249733165, 2.88074279, 0.249733463)
861
Part16.CFrame = CFrame.new(-8.40756989, 4.19514513, -83.8649292, 0, 0, -1, 0, 1, 0, 1, 0, 0)
862
Part16.BottomSurface = Enum.SurfaceType.Smooth
863
Part16.TopSurface = Enum.SurfaceType.Smooth
864
Part16.Color = Color3.new(0.792157, 0.74902, 0.639216)
865
Part16.Position = Vector3.new(-8.40756989, 4.19514513, -83.8649292)
866
Part16.Orientation = Vector3.new(0, -90, 0)
867
Part16.Color = Color3.new(0.792157, 0.74902, 0.639216)
868
CylinderMesh17.Parent = Part16
869
CylinderMesh17.Scale = Vector3.new(0.800000012, 0.995999992, 0.800000012)
870
CylinderMesh17.Scale = Vector3.new(0.800000012, 0.995999992, 0.800000012)
871
Part18.Name = "Metal"
872
Part18.Parent = Tool0
873
Part18.Material = Enum.Material.Wood
874
Part18.BrickColor = BrickColor.new("Pine Cone")
875
Part18.Rotation = Vector3.new(0, -90, 0)
876
Part18.CanCollide = false
877
Part18.FormFactor = Enum.FormFactor.Custom
878
Part18.Size = Vector3.new(0.249733165, 2.88074279, 0.249733463)
879
Part18.CFrame = CFrame.new(-8.40756989, 4.1851449, -83.8649292, 0, 0, -1, 0, 1, 0, 1, 0, 0)
880
Part18.BottomSurface = Enum.SurfaceType.Smooth
881
Part18.TopSurface = Enum.SurfaceType.Smooth
882
Part18.Color = Color3.new(0.423529, 0.345098, 0.294118)
883
Part18.Position = Vector3.new(-8.40756989, 4.1851449, -83.8649292)
884
Part18.Orientation = Vector3.new(0, -90, 0)
885
Part18.Color = Color3.new(0.423529, 0.345098, 0.294118)
886
CylinderMesh19.Parent = Part18
887
CylinderMesh19.Scale = Vector3.new(0.907233477, 1, 0.85386616)
888
CylinderMesh19.Scale = Vector3.new(0.907233477, 1, 0.85386616)
889
LocalScript20.Name = "Remove Mouse"
890
LocalScript20.Parent = Tool0
891
table.insert(cors,sandbox(LocalScript20,function()
892
local mouse = game.Players.LocalPlayer:GetMouse()
893
mouse.Icon = 'rbxassetid://35446049'
894
end))
895
for i,v in pairs(mas:GetChildren()) do
896
	v.Parent = game:GetService("Players").LocalPlayer.Backpack
897
	pcall(function() v:MakeJoints() end)
898
end
899
mas:Destroy()
900
for i,v in pairs(cors) do
901
	spawn(function()
902
		pcall(v)
903
	end)
904
end