None of my other threads have ever been responded to, but where else am I going to ask for help?
During the buildout phase of my game, when one of my game objects is being created, I add an event listener using (code very much abbreviated):
star[n].collision = stopOverlap
star:addEventListener( "collision", star[n])
for now, stopOverlap is something like
print("stopOverlap just fired.")
a few seconds after my buildout phase, I do something like:
function killStarListeners()
local n = 0
local i = 1
print("killing listeners now")
for i = 1, 500 do
n = n + 1
if star[n] and star[n].removeSelf then
star[n]:removeEventListener("collision", stopOverlap)
activeListeners = activeListeners - 1
print("activeListeners (after live): "..activeListeners)
end
end
end
timer.performWithDelay( 10000, killStarListeners, 1)
When I run this, I get all the expected messages in the console showing that killStarListeners is firing as expected.
Unfortunately, this listeners are really still there, and I still get the “stopOverlap” messages even after the listeners were supposedly removed.
Please advise, as this is a deal-breaker, and one of only a few things standing in my way for releasing my game. [import]uid: 13529 topic_id: 6897 reply_id: 306897[/import]

[import]uid: 8872 topic_id: 6897 reply_id: 24131[/import]