Draw a racast from player origin to teleport point - if the raycast hits the enemy, the respond accordingly. Then, do another raycast to check for walls and the like, and move the player accordingly. Something like
var hitObj : RaycastHit;
//will look for any solid object along path(not just enemy)
if(Physics.Raycast(Player.transform.position, Vector3.forward, hitObj, portDistance))
{
//check hit object, if the enemy is there hit anywhere long the line, kill it
if(hitObj.tag == "Enemy")
Destroy(hitobj);
}
Then it's just a matter of moving the player, by whichever method your movement script utilizes.