• 23 Avril 2025, 19:18:11


Auteur Sujet: [Résolu] Axe d'un objet -- Dernière petite question  (Lu 1020 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
SaliSaluSalo =D

Voila donc j'aimerais attacher une remorque objet à une remorque ( véhicule) comme on ne peut pas AttachTrailerToVehicle une remorque à une autres.
Mais le soucis c'est que l'axe de l'objet n'est pas excentré et j'aimerais trouver une formule pour le replacer par un SetObjectRotation et un MoveObject ? Et je voulais avoir vaut conseille si la valeur de l'angle étais proportionelle à la distance à déplacer de la remorque ? ^^

((J'vien de tester de changer l'angle et de bouger l'objet et sa donne avec un angle de 12°
   0.7487792965 pour X et -0.2536621859 pour Y ))

A+ Sam.  :cheers

Est-ce que le return SendClientMessage(playerid, COLOR, " "); équivaut à un

SendClientMessage(playerid, COLOR, " ");
return 1;
Car sa fait un petit moment que j'utilise ceci mais je me demande si sa sert réellement  au niveau du serveur si par la suite il y aura des bugs etc..
« Modifié: 23 Juin 2010, 16:24:52 par chneubeul »

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [Demande Aide] Axe d'un objet
« Réponse #1 le: 23 Juin 2010, 12:09:02 »
Je ne comprend pas ce que tu veux faire.

Est-ce que tu veux attacher une remorque à une autre remorque ?
Si oui, la fonction AttachTrailerToVehicle fonctionne très bien dans ce cas, il est d'ailleurs très marrant de faire des trains de véhicules géants.
Il est possible d'attacher n'importe quel véhicule à n'importe quel autre (bien que je n'ai pas testé toutes les combinaisons possibles).

Est-ce que tu veux attacher un objet à une remorque ?
Si oui, il n'existe pas de fonction pour attacher un objet à un véhicule (il en existe une pour attache un objet à un joueur par contre). Et donc, tu vas devoir coder toi-même le déplacement de l'objet en fonction du déplacement du véhicule (ce qui risque de ne pas être joli du tout car ce sera forcément saccadé).
Dans ce cas effectivement, il va falloir que tu calcules l'angle que doit avoir l'objet sur l'axe Z et sa position relative par rapport à la remorque mais ces deux données ne sont pas liées entre elles.
L'angle est directement lié à l'angle que fait le véhicule (ou la remorque) avec ce même axe (bien que dans ce cas, l'objet tournera en même temps que le remorque ce qui n'est pas très réaliste).
Mais il me paraît évident que cet angle n'est pas proportionnel à une distance.
La position relative est fixe, l'objet étant toujours à la même distance de la remorque (à moins de faire quelque chose de très compliqué).

A moins que je n'ai pas compris ce que tu voulais faire.

++
Syg
Courtesy of GtaManiac

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : [Demande Aide] Axe d'un objet
« Réponse #2 le: 23 Juin 2010, 12:12:27 »
J'avais codé une fonction du genre (pour les angles) pour mon FS missile, tu la trouvera facilement ^^



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : [Demande Aide] Axe d'un objet
« Réponse #3 le: 23 Juin 2010, 12:16:03 »
Merci beaucoup Syg. tu as très bien compris ce que je voulais et il n'est pas possible d'attacher une remorque à une remorque j'ai déjà tester
tout comme la remorque pour scarifier le sol seulement attacher à un tracteur et la remorque genre groupe électrogène seulement au camion de la DDE. =D

Sasuke je regarde sa de suite :)

A+ Sam.
Encore merci pour votre aide.

Donc si j'ai bien compris :


ObjectRot(playerid, objectid)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
new Float:xo,Float:yo,Float:zo;
GetObjectPos(objectid,xo,yo,zo);
x = x - xo;
y = y - yo;
z -= zo;
new Float:Rot = atan2(y,x);
x = floatsqroot(x * x + y * y);//ca nous prend la distance totale horizontale, pas moyen de controuner la racine carrée
new Float:Rot2 = atan2(z, x);
SetObjectRot(objectid, 0, rot2,Rot-180);//ensuite tu ajuste ici
}

j'utilise ceci coder par Sim et ensuite je met la position de l'objet derrière le joueur attacher à lui et je compare par rapport a sa remorque.
Mais peut on attacher un objet et le modifier et qu'il reste attacher ? ^^ Sinon j'vais coder sa et tester.

Par contre j'vien de réfléchir sa risque de faire moche si j'utilise l'attach en continue car je devrais le rattacher et il sera téléporter donc je devrais l'attacher, quand le joueur bouge ( OnObjectMoved) je prend l'angle et je bouge l'objet donc en fonction de sa vitesse je règle la vitesse de déplacement de l'objet et je lui met une rotation
« Modifié: 23 Juin 2010, 12:34:34 par chneubeul »

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : [Re:] Axe d'un objet
« Réponse #4 le: 23 Juin 2010, 12:48:08 »
Ouais ça va être trop moche, c'est un peu normal mais c'est comme ça ^^



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : [Re:] Axe d'un objet
« Réponse #5 le: 23 Juin 2010, 13:03:01 »
J'le fait ou pas ? x'D La j'ai commencer mais vla' vu le résultat sa donne pas envie x'D

ben j'pense sa devrait être limite comme c'est la remorque et elle ne bouge pas trop. C'est plus le tracteur qui influe.
« Modifié: 23 Juin 2010, 13:06:05 par chneubeul »

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : [Re:] Axe d'un objet
« Réponse #6 le: 23 Juin 2010, 14:22:36 »
Tu peut toujours tenter ^^



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Re : [Demande Aide] Axe d'un objet
« Réponse #7 le: 23 Juin 2010, 14:41:16 »
Merci beaucoup Syg. tu as très bien compris ce que je voulais et il n'est pas possible d'attacher une remorque à une remorque j'ai déjà tester
tout comme la remorque pour scarifier le sol seulement attacher à un tracteur et la remorque genre groupe électrogène seulement au camion de la DDE. =D
Alors je pense que tu as mal fait tes tests, je viens de réussir à accrocher un remorque à une NRG-500 puis à une autre remorque sans problème avec la fonction AttachTrailerToVehicle.
J'ai aussi tester l'accrochage de la remorque pour scarifier le sol (farmplow) à une NRG-500 aves succès.
Le seul problème c'est que certains attachements sont instables et qu'il ne faut pas attacher un véhicule lorsqu'on vient de le créer mais attendre environs 500 ms avant sinon l'attachement ne fonctionne pas.

Je te conseille de refaire tes tests en prenant en compte le délai après la création du véhicule à attacher.

++
Syg
Courtesy of GtaManiac

Hors ligne chneubeul

  • *
  • Gangster
  • GTA Online Addict :)
  • Messages: 1132
    • Voir le profil
Re : [Re:] Axe d'un objet
« Réponse #8 le: 23 Juin 2010, 15:57:43 »
Ah merci beaucoup enfaite moi j'avais fait une commande et je l'ai attacher direct tu sais ? Mais avec les remorques de la DDE et pour scarifier j'ai bien fait les tests, ben c'est une excellente nouvelle alors ( j'avais presque fini le système ^^ ) merci à vous ! :)