All pastes #767364 Raw Edit

Unnamed

public c v1 · immutable
·published 2007-11-09 18:21 UTC
rendered paste body
SetObjectLookAt(object, Float:X, Float:Y, Float:Z){ // By Luby    new Float:X2, Float:Y2;//, Float:Z2;    X2 = X; Y2 = Y; //Z2 = Z;    new Float:sin,Float:dis,Float:x,Float:y,Float:z,Float:tmp3,Float:tmp4,Float:MindAngle;    GetObjectPos(object,x,y,z);    dis = floatsqroot(floatpower(floatabs(floatsub(x,X2)),2)+floatpower(floatabs(floatsub(y,Y2)),2));    if(x>X2) tmp3=x-X2; else tmp3=X2-x;    if(y>Y2) tmp4=y-Y2; else tmp4=Y2-y;    if(Y2>y && X2>x)    {        sin = asin(tmp3/dis);MindAngle = floatsub(floatsub(floatadd(sin, 90), floatmul(sin, 2)), -90.0);    }    if(Y2<y && X2>x)    {        sin = asin(tmp3/dis);MindAngle = floatsub(floatadd(sin, 180), 180.0);    }    if(Y2<y && X2<x)    {        sin = acos(tmp4/dis);MindAngle = floatsub(floatadd(sin, 360), floatmul(sin, 2));    }    if(Y2>y && X2<x)    {        sin = asin(tmp3/dis);MindAngle = floatadd(sin, 180);    }    new Float:Zangle = floatsub(MindAngle, 0.0);        print(fastformat(FloatToStr(MindAngle)));    GetObjectPos(object,x,y,z);    X2 = floatsqroot(floatpower(floatabs(floatsub(0,X)),2)+floatpower(floatabs(floatsub(0,Y)),2));    x = floatsqroot(floatpower(floatabs(floatsub(0,x)),2)+floatpower(floatabs(floatsub(0,x)),2));    Y2 = Z;    y = z;    print(fastformat(FloatToStr(Y2), FloatToStr(X2)));    dis = floatsqroot(floatpower(floatabs(floatsub(x,X2)),2)+floatpower(floatabs(floatsub(y,Y2)),2));    if(x>X2) tmp3=x-X2; else tmp3=X2-x;    if(y>Y2) tmp4=y-Y2; else tmp4=Y2-y;    if(Y2>y && X2>x)    {        sin = asin(tmp3/dis);MindAngle = floatsub(floatsub(floatadd(sin, 90), floatmul(sin, 2)), -90.0);    }    if(Y2<y && X2>x)    {        sin = asin(tmp3/dis);MindAngle = floatsub(floatadd(sin, 180), 180.0);    }    if(Y2<y && X2<x)    {        sin = acos(tmp4/dis);MindAngle = floatsub(floatadd(sin, 360), floatmul(sin, 2));    }    if(Y2>y && X2<x)    {        sin = asin(tmp3/dis);MindAngle = floatadd(sin, 180);    }    print(fastformat(FloatToStr(MindAngle)));    GetObjectRot(object, x, y, z);    SetObjectRot(object, 90.0, 90.0, Zangle);    GetObjectPos(object,x,y,z);}