[Ajuda] GetVehicleRotationQuat
#1

Estou fazendo um sistema que quando aperto Ctrl ele lanзa o objeto, sу que lanзa apenas pro lado onde o veiculo esta virado, ja quebrei a cabeзa tentando colocar o GetVehicleRotationQuat pra que o objeto seja lanзando pra frente com o veiculo inclinado.. (igual o hydra atira), alguem pode me ajudar com isso?

PHP код:
new Float:xFloat:yFloat:zFloat:a;
GetVehiclePos(vehicleid,x,y,z);
GetVehicleZAngle(vehicleid,a);
+= 90;
+= VehicleOffsetZ;
+= (VehicleOffsetX floatsin(-adegrees));
+= (VehicleOffsetX floatcos(-adegrees));
Objeto CreateObject(18651,x,y,z,0,0,a,300.0);
        
+= 270;
+= (30 floatsin(-adegrees));
+= (30 floatcos(-adegrees));
MoveObject(Objeto,x,y,z,35.0); 
Reply
#2

Cara quaternion й um assunto bem complicado de se mexer no sa-mp, por sorte eu conheзo uma include que usa esse conceito que vocк precisa:

https://sampforum.blast.hk/showthread.php?tid=115695

Caso precise de exemplo de script, procure pelo gamemode beta rp que postei, procure na parte de modificaзгo de carros prуprios (cores, mнsseis etc).
Reply
#3

Quote:
Originally Posted by ipsLeon
Посмотреть сообщение
Cara quaternion й um assunto bem complicado de se mexer no sa-mp, por sorte eu conheзo uma include que usa esse conceito que vocк precisa:

https://sampforum.blast.hk/showthread.php?tid=115695

Caso precise de exemplo de script, procure pelo gamemode beta rp que postei, procure na parte de modificaзгo de carros prуprios (cores, mнsseis etc).
Hahaha, mais foi dai mesmo que peguei o exemplo de script, da include VM de sistema de missil
O sistema funciona bem atй demais, mas sу atira reto, ai eu precisava do GetVehicleRotationQuat pra usar em aeronaves
Reply
#4

Quer descobrir a rotaзгo Y da aeronave, й isso? Dai pode atirar pra baixo e pra cima em linha reta? Se for isso que precisa recomendo dar uma olhada neste tуpico, nele tem essa postagem muito interessante, deve ser o suficiente pro seu sistema
Reply
#5

Quote:
Originally Posted by ipsLeon
Посмотреть сообщение
Quer descobrir a rotaзгo Y da aeronave, й isso? Dai pode atirar pra baixo e pra cima em linha reta? Se for isso que precisa recomendo dar uma olhada neste tуpico, nele tem essa postagem muito interessante, deve ser o suficiente pro seu sistema
Ahhh, vocк tem toda razгo, eu precisava apenas da rotaзгo Y, consegui fazer isso usando:

Quote:
Originally Posted by DANGER1979
Посмотреть сообщение
pawn Код:
stock ConvertNonNormaQuatToEuler(Float: qw, Float: qx, Float:qy, Float:qz,
                                &Float:heading, &Float:attitude, &Float:bank)
{
    new Float: sqw = qw*qw;
    new Float: sqx = qx*qx;
    new Float: sqy = qy*qy;
    new Float: sqz = qz*qz;
    new Float: unit = sqx + sqy + sqz + sqw; // if normalised is one, otherwise is correction factor
    //если normalised, - один, в противном случае - показатель коррекции
    new Float: test = qx*qy + qz*qw;
    if (test > 0.499*unit)
    { // singularity at north pole - особенность на северном полюсе
        heading = 2*atan2(qx,qw);
        attitude = 3.141592653/2;
        bank = 0;
        return 1;
    }
    if (test < -0.499*unit)
    { // singularity at south pole - особенность на южном полюсе
        heading = -2*atan2(qx,qw);
        attitude = -3.141592653/2;
        bank = 0;
        return 1;
    }
    heading = atan2(2*qy*qw - 2*qx*qz, sqx - sqy - sqz + sqw);
    attitude = asin(2*test/unit);
    bank = atan2(2*qx*qw - 2*qy*qz, -sqx + sqy - sqz + sqw);
    return 1;
}
pawn Код:
stock GetVehicleRotation(vehicleid,&Float:heading, &Float:attitude, &Float:bank)
{
    new Float:quat_w,Float:quat_x,Float:quat_y,Float:quat_z;
    GetVehicleRotationQuat(vehicleid,quat_w,quat_x,quat_y,quat_z);
    ConvertNonNormaQuatToEuler(quat_w,quat_x,quat_z,quat_y, heading, attitude, bank);
    bank = -1*bank;
    return 1;
}
Reply
#6

Legal, fico feliz por ter conseguido, essa funзгo do danger realmente й muito boa Posta um video do sistema quando tiver pronto, gostaria de ver como fica o SAM com quaternion :P
Reply
#7

Que tal?

https://www.youtube.com/watch?v=s0es...ature=*********
Reply
#8

Ficou muito bom mas essa mъsica й horrenda kkkk bom trabalho.
Reply
#9

O sistema fico show. Muito legal ! ! !
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)