Esta funзгo que eu estou tentando fazer, й para auto ajustar as coordenadas do "SetPlayerAttachedObject", conforme a skin, mas o resultado ta dando errado as coordenadas, alguem pode achar o erro, deve ser bem bobo!
PHP код:
new Float:SkinOffSet[300][7] = {
{0.098771, 0.030772, -0.000335, 85.342658, 84.122947, 4.236968, 1.000000}, // - 0
{0.100766, 0.028630, -0.003521, 87.936676, 82.110870, 4.236968, 1.000000}, // - 1
{0.083712, 0.033132, -0.003521, 87.936676, 82.110870, 4.236968, 1.000000}, // - 2
{0.099500, 0.047703, 0.000558, 280.687683, 90.938697, 169.126358, 1.000000}, // - 3
{0.126660, 0.017465, -0.004450, 281.516479, 103.193008, 168.312896, 1.167009}, // - 4
{0.109650, 0.017465, -0.004712, 281.516479, 106.686439, 168.312896, 1.167009}, // - 5
{0.101269, 0.028933, 0.000001, 281.516479, 91.839576, 168.312896, 1.000000}, // - 6
{0.090066, 0.043458, -0.006523, 87.936676, 82.110870, 4.236968, 1.000000}, // - 7
.. continua atй a ultima skin do samp 0.3.7
PHP код:
public SetPlayerAttachedObjectEx(playerid, bone, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, &Float:PX, &Float:PY, &Float:PZ, &Float:AX, &Float:AY, &Float:AZ)
{
if(bone == 2)
{
new skin= GetPlayerSkin(playerid);
new Float:CoordDX= SkinOffSet[skin][0];
new Float:CoordDY= SkinOffSet[skin][1];
new Float:CoordDZ= SkinOffSet[skin][2];
new Float:AngleDX= SkinOffSet[skin][3];
new Float:AngleDY= SkinOffSet[skin][4];
new Float:AngleDZ= SkinOffSet[skin][5];
CoordDX= 0.098771-CoordDX;
CoordDY= 0.030772-CoordDX;
CoordDZ= -0.000335-CoordDX;
AngleDX= 85.342658-CoordDX;
AngleDY= 84.122947-CoordDX;
AngleDZ= 4.236968-CoordDX;
PX= fOffsetX+CoordDX;
PY= fOffsetY+CoordDY;
PZ= fOffsetZ+CoordDZ;
AX= fRotX+AngleDX;
AY= fRotY+AngleDY;
AZ= fRotZ+AngleDZ;
return 1;
}
return 0;
}