Problema con removeSelf() en colisión

Hola a tod@s, estoy creando un juego y me he visto envuelta en un problema que creía que era más fácil de solucionar, pero no doy con la tecla, me explico.
Tengo una instancia de colisión donde instance es la vida y cuando gerrero topa con esta, se debe eliminar la vida y el destello que está detrás. Cuando ocurre la primera colisión, me elimina la vida y el destello pero si sigo adelante y colisiono con otra vida, se elimina la vida pero el destello no se elimina por segunda vez, me da un error de valor nulo con el removeSelf, (attempt to call method ‘removeSelf’ (a nil value)). ¿Alguien me puede ayudar?
Saludos y gracias de antemano.

	function instance:collision( event )

	local phase, other = event.phase, event.other
	if phase == "began" and other.type == "guerrero" then
	
		audio.play( sounds.vida )
		scene.score:add( 500 )
		display.remove( self )--elimino la vida (aquí no tengo problema, puedo eliminar las vidas que quiera)
		destello:removeSelf()--cuando intento eliminar el segundo destello me da error de valor nulo con removeSelf
		other.shield:heal(1)
		
	end
end

Captura

Hola!

I wanted to give you a quick answer so feel free to use Google Translate :slight_smile:

The problem is with destello object being already removed. In your code, you are probably trying to remove the same object you removed in the first collision. To fix this, you should add destello object to the vida object like you did with shield object.

Sample code: (pseudo)

function instance:collision( event )
local phase, other = event.phase, event.other

if phase == "began" and other.type == "guerrero" then
   audio.play( sounds.vida )
   scene.score:add(500)
   display.remove( self.destello )
   display.remove( self )
   other.shield:heal(1)
end

vida = display.newImageRect("vida.png")
vida.destello = display.newImarect("destello.png")

Hola bgmadclown, gracias por contestar. No puedo hacer lo que dices porque los objetos los cargo con tiled importándolos con json, creo que habría que hacerlo con array y un contador al que le pueda restar objetos, estoy indagando por los foros a ver si encuentro algo que me pueda orientar.