That's actually a pretty good code snippet you found there.
To be honest you don't even need trigonometry for this, just the very basics of linear algebra, mostly vectors.
You can create a vector that points from point A to point B by subtracting all of A's components from all of B's components.
are in your code.
is just the distance formula
to calculate the distance between the player and the enemy, and the
is there to make the projectile go faster as it gets closer to it's target. However, it's a really bad way of achieving acceleration and I wouldn't use that.
To make your enemies fire a bullet at your player's current position you should save the player's actual position (by value and not by reference) and calculate against that like so:
Vector2f direction = new Vector2f(target.x-position.x, target.y-position.y);
position.x += direction.x*speed*delta;
position.y += direction.y*speed*delta;
is just a Vector2f that contains your projectile's current position and
is a Vector2f too which contains the projectile's target location.
should be the speed of the projectile.
This is just the basics and the first thing that I would change on this code as soon as you understand what's going on is to add some kind of time based (and definitely not distance based) acceleration.