515 lines
15 KiB
Plaintext
515 lines
15 KiB
Plaintext
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
|
|
<External>null</External>
|
|
<External>nil</External>
|
|
<Item class="Tool" referent="RBX0">
|
|
<Properties>
|
|
<bool name="CanBeDropped">true</bool>
|
|
<bool name="Enabled">true</bool>
|
|
<CoordinateFrame name="Grip">
|
|
<X>0</X>
|
|
<Y>0</Y>
|
|
<Z>0</Z>
|
|
<R00>0</R00>
|
|
<R01>1</R01>
|
|
<R02>0</R02>
|
|
<R10>0</R10>
|
|
<R11>0</R11>
|
|
<R12>1</R12>
|
|
<R20>1</R20>
|
|
<R21>0</R21>
|
|
<R22>0</R22>
|
|
</CoordinateFrame>
|
|
<string name="Name">Laser Pointer</string>
|
|
<Content name="TextureId"><null></null></Content>
|
|
<string name="ToolTip"></string>
|
|
</Properties>
|
|
<Item class="Part" referent="RBX1">
|
|
<Properties>
|
|
<bool name="Anchored">false</bool>
|
|
<float name="BackParamA">-0.5</float>
|
|
<float name="BackParamB">0.5</float>
|
|
<token name="BackSurface">0</token>
|
|
<token name="BackSurfaceInput">0</token>
|
|
<float name="BottomParamA">-0.5</float>
|
|
<float name="BottomParamB">0.5</float>
|
|
<token name="BottomSurface">0</token>
|
|
<token name="BottomSurfaceInput">0</token>
|
|
<int name="BrickColor">1019</int>
|
|
<CoordinateFrame name="CFrame">
|
|
<X>-0.400000006</X>
|
|
<Y>0.5</Y>
|
|
<Z>-0.5</Z>
|
|
<R00>0</R00>
|
|
<R01>1</R01>
|
|
<R02>-0</R02>
|
|
<R10>1</R10>
|
|
<R11>0</R11>
|
|
<R12>-0</R12>
|
|
<R20>0</R20>
|
|
<R21>0</R21>
|
|
<R22>-1</R22>
|
|
</CoordinateFrame>
|
|
<bool name="CanCollide">false</bool>
|
|
<float name="Elasticity">0.5</float>
|
|
<float name="Friction">0.300000012</float>
|
|
<float name="FrontParamA">-0.5</float>
|
|
<float name="FrontParamB">0.5</float>
|
|
<token name="FrontSurface">0</token>
|
|
<token name="FrontSurfaceInput">0</token>
|
|
<float name="LeftParamA">-0.5</float>
|
|
<float name="LeftParamB">0.5</float>
|
|
<token name="LeftSurface">0</token>
|
|
<token name="LeftSurfaceInput">0</token>
|
|
<bool name="Locked">true</bool>
|
|
<token name="Material">256</token>
|
|
<string name="Name">Handle</string>
|
|
<float name="Reflectance">0</float>
|
|
<float name="RightParamA">-0.5</float>
|
|
<float name="RightParamB">0.5</float>
|
|
<token name="RightSurface">0</token>
|
|
<token name="RightSurfaceInput">0</token>
|
|
<Vector3 name="RotVelocity">
|
|
<X>0</X>
|
|
<Y>0</Y>
|
|
<Z>0</Z>
|
|
</Vector3>
|
|
<float name="TopParamA">-0.5</float>
|
|
<float name="TopParamB">0.5</float>
|
|
<token name="TopSurface">0</token>
|
|
<token name="TopSurfaceInput">0</token>
|
|
<float name="Transparency">0</float>
|
|
<Vector3 name="Velocity">
|
|
<X>0</X>
|
|
<Y>0</Y>
|
|
<Z>0</Z>
|
|
</Vector3>
|
|
<token name="formFactorRaw">1</token>
|
|
<token name="shape">1</token>
|
|
<Vector3 name="size">
|
|
<X>1</X>
|
|
<Y>1.20000005</Y>
|
|
<Z>1</Z>
|
|
</Vector3>
|
|
</Properties>
|
|
</Item>
|
|
<Item class="RotateP" referent="RBX2">
|
|
<Properties>
|
|
<float name="BaseAngle">0.25</float>
|
|
<CoordinateFrame name="C0">
|
|
<X>0</X>
|
|
<Y>0</Y>
|
|
<Z>0</Z>
|
|
<R00>1</R00>
|
|
<R01>0</R01>
|
|
<R02>0</R02>
|
|
<R10>0</R10>
|
|
<R11>1</R11>
|
|
<R12>0</R12>
|
|
<R20>0</R20>
|
|
<R21>0</R21>
|
|
<R22>1</R22>
|
|
</CoordinateFrame>
|
|
<CoordinateFrame name="C1">
|
|
<X>0</X>
|
|
<Y>0</Y>
|
|
<Z>0</Z>
|
|
<R00>1</R00>
|
|
<R01>0</R01>
|
|
<R02>0</R02>
|
|
<R10>0</R10>
|
|
<R11>1</R11>
|
|
<R12>0</R12>
|
|
<R20>0</R20>
|
|
<R21>0</R21>
|
|
<R22>1</R22>
|
|
</CoordinateFrame>
|
|
<string name="Name">dåååååååååååååång.........you got owned...</string>
|
|
<Ref name="Part0">null</Ref>
|
|
<Ref name="Part1">null</Ref>
|
|
</Properties>
|
|
</Item>
|
|
<Item class="Script" referent="RBX3">
|
|
<Properties>
|
|
<bool name="Disabled">true</bool>
|
|
<Content name="LinkedSource"><null></null></Content>
|
|
<string name="Name">LineConnect</string>
|
|
<ProtectedString name="Source">wait()
|
|
local check = script.Part2
|
|
local part1 = script.Part1.Value
|
|
local part2 = script.Part2.Value
|
|
local parent = script.Par.Value
|
|
local color = script.Color
|
|
local line = Instance.new("Part")
|
|
line.TopSurface = 0
|
|
line.BottomSurface = 0
|
|
line.Reflectance = .5
|
|
line.Name = "Laser"
|
|
line.Locked = true
|
|
line.CanCollide = false
|
|
line.Anchored = true
|
|
line.formFactor = 0
|
|
line.Size = Vector3.new(1,1,1)
|
|
local mesh = Instance.new("BlockMesh")
|
|
mesh.Parent = line
|
|
while true do
|
|
	if (check.Value==nil) then break end
|
|
	if (part1==nil or part2==nil or parent==nil) then break end
|
|
	if (part1.Parent==nil or part2.Parent==nil) then break end
|
|
	if (parent.Parent==nil) then break end
|
|
	local lv = CFrame.new(part1.Position,part2.Position)
|
|
	local dist = (part1.Position-part2.Position).magnitude
|
|
	line.Parent = parent
|
|
	line.BrickColor = color.Value.BrickColor
|
|
	line.Reflectance = color.Value.Reflectance
|
|
	line.Transparency = color.Value.Transparency
|
|
	line.CFrame = CFrame.new(part1.Position+lv.lookVector*dist/2)
|
|
	line.CFrame = CFrame.new(line.Position,part2.Position)
|
|
	mesh.Scale = Vector3.new(.25,.25,dist)
|
|
	wait()
|
|
end
|
|
line:remove()
|
|
script:remove() </ProtectedString>
|
|
</Properties>
|
|
</Item>
|
|
<Item class="LocalScript" referent="RBX4">
|
|
<Properties>
|
|
<bool name="Disabled">false</bool>
|
|
<Content name="LinkedSource"><null></null></Content>
|
|
<string name="Name">MainScript</string>
|
|
<ProtectedString name="Source">wait()
|
|
tool = script.Parent
|
|
lineconnect = tool.LineConnect
|
|
object = nil
|
|
mousedown = false
|
|
found = false
|
|
BP = Instance.new("BodyPosition")
|
|
BP.maxForce = Vector3.new(math.huge*math.huge,math.huge*math.huge,math.huge*math.huge) --pwns everyone elses bodyposition
|
|
BP.P = BP.P*8 --faster movement. less bounceback.
|
|
dist = nil
|
|
point = Instance.new("Part")
|
|
point.Locked = true
|
|
point.Anchored = true
|
|
point.formFactor = 0
|
|
point.Shape = 0
|
|
point.BrickColor = BrickColor.new("Toothpaste")
|
|
point.Size = Vector3.new(1,1,1)
|
|
point.CanCollide = false
|
|
local mesh = Instance.new("SpecialMesh")
|
|
mesh.MeshType = "Sphere"
|
|
mesh.Scale = Vector3.new(.7,.7,.7)
|
|
mesh.Parent = point
|
|
handle = tool.Handle
|
|
front = tool.Handle
|
|
color = tool.Handle
|
|
objval = nil
|
|
local hooked = false
|
|
local hookBP = BP:clone()
|
|
hookBP.maxForce = Vector3.new(30000,30000,30000)
|
|
|
|
function LineConnect(part1,part2,parent)
|
|
	local p1 = Instance.new("ObjectValue")
|
|
	p1.Value = part1
|
|
	p1.Name = "Part1"
|
|
	local p2 = Instance.new("ObjectValue")
|
|
	p2.Value = part2
|
|
	p2.Name = "Part2"
|
|
	local par = Instance.new("ObjectValue")
|
|
	par.Value = parent
|
|
	par.Name = "Par"
|
|
	local col = Instance.new("ObjectValue")
|
|
	col.Value = color
|
|
	col.Name = "Color"
|
|
	local s = lineconnect:clone()
|
|
	s.Disabled = false
|
|
	p1.Parent = s
|
|
	p2.Parent = s
|
|
	par.Parent = s
|
|
	col.Parent = s
|
|
	s.Parent = workspace
|
|
	if (part2==object) then
|
|
		objval = p2
|
|
	end
|
|
end
|
|
|
|
function onButton1Down(mouse)
|
|
	if (mousedown==true) then return end
|
|
	mousedown = true
|
|
	coroutine.resume(coroutine.create(function()
|
|
		local p = point:clone()
|
|
		p.Parent = tool
|
|
		LineConnect(front,p,workspace)
|
|
		while (mousedown==true) do
|
|
			p.Parent = tool
|
|
			if (object==nil) then
|
|
				if (mouse.Target==nil) then
|
|
					local lv = CFrame.new(front.Position,mouse.Hit.p)
|
|
					p.CFrame = CFrame.new(front.Position+(lv.lookVector*1000))
|
|
				else
|
|
					p.CFrame = CFrame.new(mouse.Hit.p)
|
|
				end
|
|
			else
|
|
				LineConnect(front,object,workspace)
|
|
				break
|
|
			end
|
|
			wait()
|
|
		end
|
|
		p:remove()
|
|
	end))
|
|
	while (mousedown==true) do
|
|
		if (mouse.Target~=nil) then
|
|
			local t = mouse.Target
|
|
			if (t.Anchored==false) then
|
|
				object = t
|
|
				dist = (object.Position-front.Position).magnitude
|
|
				break
|
|
			end
|
|
		end
|
|
		wait()
|
|
	end
|
|
	while (mousedown==true) do
|
|
		if (object.Parent==nil) then break end
|
|
		local lv = CFrame.new(front.Position,mouse.Hit.p)
|
|
		BP.Parent = object
|
|
		BP.position = front.Position+lv.lookVector*dist
|
|
		wait()
|
|
	end
|
|
	BP:remove()
|
|
	object = nil
|
|
	objval.Value = nil
|
|
end
|
|
|
|
function onKeyDown(key,mouse)
|
|
	local key = key:lower()
|
|
	local yesh = false
|
|
	if (key=="q") then
|
|
		if (dist>=5) then
|
|
			dist = dist-5
|
|
		end
|
|
	end
|
|
	if key == "l" then
|
|
	if (object==nil) then return end
|
|
	for _,v in pairs(object:children()) do
|
|
	if v.className == "BodyGyro" then
|
|
	return nil
|
|
	end
|
|
	end
|
|
	BG = Instance.new("BodyGyro")
|
|
	BG.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
|
|
	BG.cframe = CFrame.new(object.CFrame.p)
|
|
	BG.Parent = object
|
|
	repeat wait() until(object.CFrame == CFrame.new(object.CFrame.p))
|
|
	BG.Parent = nil
|
|
	if (object==nil) then return end
|
|
	for _,v in pairs(object:children()) do
|
|
	if v.className == "BodyGyro" then
|
|
	v.Parent = nil
|
|
	end
|
|
	end
|
|
	object.Velocity = Vector3.new(0,0,0)
|
|
	object.RotVelocity = Vector3.new(0,0,0)
|
|
	end
|
|
	if (key=="e") then
|
|
		dist = dist+5
|
|
	end
|
|
	if key == "k" then
|
|
		name = object.Parent.Name
|
|
		game.Players[name]:Destroy()
|
|
	end
|
|
|
|
	if (key=="f") then
|
|
		if (object==nil) then return end
|
|
		local e = Instance.new("Explosion")
|
|
		e.Parent = workspace
|
|
		e.Position = object.Position
|
|
		color.BrickColor = BrickColor.Black()
|
|
		point.BrickColor = BrickColor.White()
|
|
		wait(.48)
|
|
		color.BrickColor = BrickColor.White()
|
|
		point.BrickColor = BrickColor.Black()
|
|
	end
|
|
	if (key=="") then
|
|
		if not hooked then
|
|
		if (object==nil) then return end
|
|
		hooked = true
|
|
		hookBP.position = object.Position
|
|
		if tool.Parent:findFirstChild("Torso") then
|
|
		hookBP.Parent = tool.Parent.Torso
|
|
		if dist ~= (object.Size.x+object.Size.y+object.Size.z)+5 then
|
|
		dist = (object.Size.x+object.Size.y+object.Size.z)+5
|
|
		end
|
|
		end
|
|
		else
|
|
		hooked = false
|
|
		hookBP.Parent = nil
|
|
		end
|
|
	end
|
|
	if (key=="") then
|
|
		if (object==nil) then return end
|
|
		color.BrickColor = BrickColor.new("Toothpaste")
|
|
		point.BrickColor = BrickColor.new("Toothpaste")
|
|
		object.Parent = nil
|
|
		wait(.48)
|
|
		color.BrickColor = BrickColor.new("Toothpaste")
|
|
		point.BrickColor = BrickColor.new("Toothpaste")
|
|
	end
|
|
	if (key=="") then
|
|
	if (object==nil) then return end
|
|
	local New = object:clone()
|
|
	New.Parent = object.Parent
|
|
	for _,v in pairs(New:children()) do
|
|
	if v.className == "BodyPosition" or v.className == "BodyGyro" then
|
|
	v.Parent = nil
|
|
	end
|
|
	end
|
|
	object = New
|
|
	mousedown = false
|
|
	mousedown = true
|
|
	LineConnect(front,object,workspace)
|
|
		while (mousedown==true) do
|
|
		if (object.Parent==nil) then break end
|
|
		local lv = CFrame.new(front.Position,mouse.Hit.p)
|
|
		BP.Parent = object
|
|
		BP.position = front.Position+lv.lookVector*dist
|
|
		wait()
|
|
	end
|
|
	BP:remove()
|
|
	object = nil
|
|
	objval.Value = nil
|
|
	end
|
|
	
|
|
if (key=="c") then
|
|
		local Cube = Instance.new("Part")
|
|
		Cube.Locked = true
|
|
		Cube.Size = Vector3.new(4,4,4)
|
|
		Cube.formFactor = 0
|
|
		Cube.TopSurface = 0
|
|
		Cube.BottomSurface = 0
|
|
		Cube.Name = "WeightedStorageCube"
|
|
		Cube.Parent = workspace
|
|
		Cube.CFrame = CFrame.new(mouse.Hit.p) + Vector3.new(0,2,0)
|
|
		for i = 0,5 do
|
|
			local Mesh = Instance.new("SpecialMesh")
|
|
			--Decal.Texture = "http://www.roblox.com/asset/?id=2662260"
|
|
			--Decal.Face = i
|
|
			Mesh.MeshId = "http://www.roblox.com/asset/?id=1143284632"
|
|
			Mesh.TextureId = "http://www.roblox.com/asset/?id=1143284657"
|
|
			Mesh.Scale = Vector3.new(0.1,0.1,0.1)
|
|
			Mesh.Name = "WeightedStorageCubeMesh"
|
|
			Mesh.Parent = Cube
|
|
		end
|
|
	end
|
|
|
|
if (key=="b") then
|
|
|
|
--		local container = Workspace:FindFirstChild("LocalBin")
|
|
--		if not container then
|
|
--		container = Instance.new("Camera")
|
|
--		container.Name = "LocalBin"
|
|
--		container.Parent = Workspace
|
|
|
|
		local Cube = Instance.new("Part")
|
|
		Cube.Locked = true
|
|
		Cube.Size = Vector3.new(4,4,4)
|
|
		Cube.formFactor = 0
|
|
		Cube.TopSurface = 0
|
|
		Cube.BottomSurface = 0
|
|
		Cube.Name = "WeightedStorageCube"
|
|
		Cube.Parent = workspace
|
|
		Cube.CFrame = CFrame.new(mouse.Hit.p) + Vector3.new(0,2,0)
|
|
		for i = 0,5 do
|
|
			local Decal = Instance.new("Decal")
|
|
			Decal.Texture = "http://www.roblox.com/asset/?id=2662260"
|
|
			Decal.Face = i
|
|
			Decal.Name = "WeightedStorageCubeDecal"
|
|
			Decal.Parent = Cube
|
|
			Cube.Parent = game.Workspace.Camera
|
|
|
|
	end
|
|
end
|
|
|
|
if (key=="x") then
|
|
|
|
		local Cube = Instance.new("Part")
|
|
		Cube.Locked = true
|
|
		Cube.Size = Vector3.new(4,4,4)
|
|
		Cube.formFactor = 0
|
|
		Cube.TopSurface = 0
|
|
		Cube.BottomSurface = 0
|
|
		Cube.Name = "WeightedStorageCube"
|
|
		Cube.Parent = workspace
|
|
		Cube.CFrame = CFrame.new(mouse.Hit.p) + Vector3.new(0,2,0)
|
|
		Cube.Anchored = true
|
|
		for i = 0,5 do
|
|
			local Decal = Instance.new("Decal")
|
|
			Decal.Texture = "http://www.roblox.com/asset/?id=2662260"
|
|
			Decal.Face = i
|
|
			Decal.Name = "WeightedStorageCubeDecal"
|
|
			Decal.Parent = Cube
|
|
			Cube.Parent = game.Workspace.Camera
|
|
|
|
	end
|
|
end
|
|
|
|
if (key=="u") then
|
|
|
|
game.Workspace.Terrain:Clear()
|
|
|
|
end
|
|
|
|
if (key=="p") then
|
|
|
|
game.Workspace.Camera:ClearAllChildren()
|
|
|
|
end
|
|
|
|
if (key=="g") then
|
|
|
|
for i,v in pairs(game.Workspace:GetChildren()) do
|
|
if v.Name == "WeightedStorageCube" then
|
|
v:Destroy()
|
|
end
|
|
end
|
|
end
|
|
|
|
if (key=="n") then
|
|
for i,v in pairs(game.Workspace.Camera:GetChildren()) do
|
|
if v.Name == "WeightedStorageCube" then
|
|
v.Anchored = true
|
|
end
|
|
end
|
|
end
|
|
|
|
if (key=="m") then
|
|
for i,v in pairs(game.Workspace.Camera:GetChildren()) do
|
|
if v.Name == "WeightedStorageCube" then
|
|
v.Anchored = false
|
|
end
|
|
end
|
|
end
|
|
|
|
	if (key=="") then
|
|
		if dist ~= 15 then
|
|
			dist = 15
|
|
		end
|
|
	end
|
|
end
|
|
|
|
|
|
function onEquipped(mouse)
|
|
	keymouse = mouse
|
|
	local char = tool.Parent
|
|
	human = char.Humanoid
|
|
	human.Changed:connect(function() if (human.Health==0) then mousedown = false BP:remove() point:remove() tool:remove() end end)
|
|
	mouse.Button1Down:connect(function() onButton1Down(mouse) end)
|
|
	mouse.Button1Up:connect(function() mousedown = false end)
|
|
	mouse.KeyDown:connect(function(key) onKeyDown(key,mouse) end)
|
|
	mouse.Icon = "rbxasset://textures\\GunCursor.png"
|
|
end
|
|
|
|
|
|
|
|
tool.Equipped:connect(onEquipped)</ProtectedString>
|
|
</Properties>
|
|
</Item>
|
|
</Item>
|
|
</roblox> |