because enemy move use navigation2d? i dont know what to put in that.
I never used Navigation2D, so I might be wrong. But instead of directly setting the position of your enemy with
set_position you could also use
move_and_collide, isn't it? With
move_and_collide you check if something is blocking the way (described by velocity). If I only want to check for collisions where I already am, I'd use an Area2D.
they colliding, but sometime it detecting that the collider is in the group "bullet", sometime not.
move_and_collide still registers every collision at the current position even when the velocity-vector is equal to zero (which I haven't tested, but you said it does) and granted that you never have issues accessing the collider (which should lead to an error if it happens), the only potential problem left would be that the collider isn't in the correct group. If you sure it is, I have absolutely no idea. :(