Precisando de ajuda com um Script e uma Mecaniaca que criei

Estou precisando de ajuda com um sisteminha de um jogo que estou criando, neste link abaixo tem vídeo com o que esta acontecendo, mas irei explicar por aqui também: quando o personagem toca a peça no “mural” o script checa se a peça de baixo da que ele esta tocando esta presente, caso não a peça é ejetada. Da primeira vez ocorre tudo bem, mas na segunda a peça é lançada, porem ela(clone da “PecaM4Fake”) fica com a Transparency = 1 e a “PecaM4Fake” que é uma peça que fica ali invisível e apenas serve para dar um CFrame ao clone criado acaba ficando com a Transparency = 0. Além disso na segunda tentativa os prints que estavam no script não são executados, e a tool não é clonada. Se puderem me ajudar agradeço!

PS: Desculpe os scripts bagunçados, não manjo muito!

Link: https://youtu.be/XKdk0M0OiGg

Script:

local tool = script.Parent

local handle = tool.Handle

local debounce = true

local mural = game.Workspace.Mural

local MuralHB = mural.MuralHitBox

local TME = mural.PecaM4

local TMEA = mural.PecaM3

local DBTIME = 0.2

local sounds = game.Workspace.Sounds

local CE = sounds.ClickEff

local equipSound = sounds.EquipSound

local ES = sounds.ExpSound

tool.Equipped:Connect(function()

equipSound:Play()

end)

handle.Touched:Connect(function(otherPart)

print("Estagio - 0")

-- print(otherPart)

-- print(otherPart.Parent)

if otherPart == MuralHB and TME.Transparency == 1 then
	
	print("É o MuralHB!")
	
	print("Estagio - 1")
	
if TMEA.Transparency == 0 then
	
		print("A peça a baixo esta presente.")
		
		if not debounce then return end
		
		print("Estagio - 2")
		
		debounce = false
		
		print(debounce)
		
		TME.Transparency = 0
		
		CE:Play()
		
		wait(DBTIME)
		
		debounce = true
		
		tool:Destroy()
		
		print("Acabou!!!")
		
		
	
	


else
		
		print("ELSE - Execução.")
		
		print("A peça a baixo NÃO esta presente.")
		
		local PM4F = mural.PecaM4Fake
		
		print("asdasdadasda")
		
		local PM4FC = mural.PecaM4Fake:Clone()
		
		local PETCD = 1
		
		local BDDT = 0.1
		
		local TNCT = 0.6
		
		local Tool4 = game.Workspace:FindFirstChild("Peca4")
		
		local Tool4C = Tool4:Clone()
		
		local TChandle = Tool4.Handle
		
		print("Estagio - 0")
		
		Tool4C.Parent = game.Workspace
		
		tool:Destroy()
		
			print("Tool Destruida.")
		
		TME.Transparency = 0
		
		
		CE:Play()
		
		
		wait(PETCD)
		
		TME.Transparency = 1
		
		local BodyVelocity = Instance.new("BodyVelocity")
		
		print("Estagio - 1")
		
		
		ES:Play()
		
		
		PM4FC.Parent = game.Workspace
		
			print("Clone criado.")
		
		PM4FC.Name = "PecaM4FakeClone"
		
		PM4FC.Transparency = 0
		
			print(PM4FC.Transparency)
		
		PM4FC.Anchored = false
		
		PM4FC.CanCollide = true
		
		PM4FC.CFrame = PM4F.CFrame
		
		BodyVelocity.Parent = PM4FC
		
			print("BodyVelocity criado.")
		
		BodyVelocity.MaxForce = Vector3.new(1000, 1000, 1000)
		
		BodyVelocity.P = 4000
		
		BodyVelocity.Velocity = Vector3.new(-75, 0, 0)
		
		print("Estagio - 2")
		
			print("Peça lancada!!! - ZUMMMMM")
		
		wait(BDDT)
		
		BodyVelocity:Destroy()
		
		wait(4)
		
		TChandle.CFrame = PM4FC.CFrame
		
			print("Substituição por uma Tool de verdade.")
		
		PM4FC:Destroy()
		
			print("Acabou!!!")
		
	
	
		end
	
	end
	
end)

Print do OutPut:
image