If i understand your script correctly, you basically never queue_free() your body. The reason is that is_in_group() shouldnt return true, as your body (i guess) is not part of the wall gorup.
i think the right approach would be to call get_colliding_bodies ( ) and then loop through them. In the loop you would check if it is in the wall group and then call queue_free() on your body.