Wenn du die Rotation über einen Winkel steuerst erstellt dir SFML (vermutlich, ich habs noch nie benutzt) eine Rotationsmatrix. Dazu wird dann per sin/cos eine 2x2 Matrix erstellt. Sinn des ganzen ist es ein gedrehtes Koordinatenkreuz zu haben, wenn du so willst. Also um 45° nach links zu rotieren "zeight" die Hochachse (y-Achse) nicht mehr gerade nach oben, sondern nach schräg links oben. Wenn du dein Objekt anhand der Hochachse ausrichtest (also "vorne" ist oben), kannst du das ausnutzen und direkt den Vektor vom Spieler zum Gegner (bzw. andersrum) ausrechnen und in die Matrix schreiben. Weil ein Koordinatenkreuz zwei Achsen hat rechnest du noch die "Rechtsachse", also die x-Achse aus. Das kannst du erreichen in dem du x und y der Hochachse tauschst und (ich glaube es war so, müsste ich auch nachgucken) x negierst.
1. Vektor vom Gegner zum Spieler bestimmen
2. Vektor normalisieren
3. Rechtsachse aus dem Vektor bestimmen
4. beide in die Modelmatrix schreiben
5. rendern