23.09.2010, 15:19
я нехочу с ними работать, мне нужно просто, так сложно написать готовый код раз вы такие умные?
stock TurnPlayerFaceToPlayer(playerid, facingtoid)
{
new Float:angle;
new Float:misc = 5.0;
new Float:x, Float:y, Float:z;
new Float:ix, Float:iy, Float:iz;
GetPlayerPos(facingtoid, x, y, z);
GetPlayerPos(playerid, ix, iy, iz);
angle = 180.0-atan2(ix-x,iy-y);
angle += misc;
misc *= -1;
SetPlayerFacingAngle(playerid, angle+misc);
}
tolko tam po-moemu nado eshe budet podkorrektirovat' rezultat (dobavit'/otn9t' skolko-to gradusov), ibo CreateObject i atan naskolko ya pomnu ots4itivaut ugli ot raznih osei (mb uje ispravili) + eshe zavisit ot samogo ob'ekta, v obshem kak-to tak
|
ОФФ: Забавно, работать с углами хотим, а изучить основы тригонометрии нет.
|
7) для нахождения угла нужно использовать такую функцию(обратная к синусу): arcsin (sin B)
|
if(arcsin >= 0.0) angle = arccos;
else angle = 360.0 - arccos;