Du brauchst die Abfrage. Du willst erst löschen, wenn die Zeit abgelaufen (Bombe.ExplodeTime oder wie es hieß) ist, oder an der Bombe eine Eigenschaft gesetzt wurde oder so. Bombe wird gelegt, Bombe explodiert, frühstens danach darf sie gelöscht werden.
Was heißt denn "mit Delete funktioniert auch nicht"? Etwas genauer bitte
.. Hast du die TList benutzt, um die Bomben zu verwalten, oder die TObjectList mit OwnsObjects = True?