игроки друг напротив друга - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (
https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: игроки друг напротив друга (
/showthread.php?tid=370434)
игроки друг напротив друга -
sanya_gnoy - 20.08.2012
с добрым утром, форумчане. как сделать, чтобы в определённой ситуации (передача денег, например), игроки поворачивались лицом друг к другу и приближались на расстояние воспроизведения анимки?
код
PHP код:
GetPlayerFacingAngle(player1, player1angle)
SetPlayerFacingAngle(player2, player1angle)
работает немножко не так, нужно выставить точный угол (15" и 195' например)
знаю, что в fsdebug так есть, когда машина спавнится перед игроком независимо от угла обзора.
Re: игроки друг напротив друга -
Baks - 20.08.2012
PHP код:
stock TurnPlayerFaceToPlayer(playerid, facingtoid){
new Float:Angle, Float:Misc = 5.0, Float:X1, Float:Y1, Float:Z1, Float:X2, Float:Y2, Float:Z2;
GetPlayerPos(playerid, X2, Y2, Z2);
GetPlayerPos(facingtoid, X1, Y1, Z1);
Angle = 180.0-atan2(X2 - X1, Y2 - Y1);
Angle += Misc;
Misc *= -1;
SetPlayerFacingAngle(playerid, Angle + Misc);}
Re: игроки друг напротив друга -
sanya_gnoy - 20.08.2012
спасибо большое, только можно пояснить за вот эти строчки?:
Quote:
Originally Posted by Baks
PHP код:
Angle = 180.0-atan2(X2 - X1, Y2 - Y1);
Angle += Misc;
Misc *= -1;
SetPlayerFacingAngle(playerid, Angle + Misc);}
|
Re: игроки друг напротив друга -
azen - 20.08.2012
словом "тригонометрия" разве что.