GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Lucifer le 02 Mai 2011, 19:15:52

Titre: Compter les kilométres d'un véhicule
Posté par: Lucifer le 02 Mai 2011, 19:15:52
Bonsoir à tous,

Je voulais me renseigner par rapport au kilométrage d'un véhicule.

Tout d'abord, est-il possible de compter le nombre de kilomètre (La distance parcouru) d'un véhicule ?

Est-il possible de compter le temps que passe un joueur dans son véhicule ?

Voilà, merci d'avance de vos réponses.

Bonne soirée  ::).
Titre: Re : Compter les kilométres d'un véhicule
Posté par: scott1 le 02 Mai 2011, 19:28:38
Tout est question de timer et de math
Titre: Re : Compter les kilométres d'un véhicule
Posté par: Lucifer le 02 Mai 2011, 19:36:44
C'est à dire ?

Justement j'aimerais un peu d'aide pour cela  :P :-[
Titre: Re : Compter les kilométres d'un véhicule
Posté par: Ssk le 02 Mai 2011, 19:50:59
Tu calcule la distance parcourue tout les x millisecondes, et ajoute celle valeur dans la variable qui contient les km parcourues
Titre: Re : Compter les kilométres d'un véhicule
Posté par: Syg le 03 Mai 2011, 10:59:44
Et n'oublie pas de ne pas compter les téléports.
Sinon, les joueurs vont s'amuser à se téléporter d'un bout à l'autre de la carte pour faire gonfler artificiellement leur compteur.

++
Syg
Titre: Re : Compter les kilométres d'un véhicule
Posté par: vardanega le 05 Mai 2011, 14:28:12
Bonjour,


CODE TIRÉ DU SITE: snoob-community.wikispaces.com

<?php
// this example is much mathematic then scripting...
// we use the Pythagorean theorem to find the distance
// between point A (X,Y) and point B (X,Y).
 
// this is the actual function...
Float:getdist(Float:x1,Float:y1,Float:x2,Float:y2)
{
    new 
Float:xdistFloat:ydistFloat:distance// needed variable
 
    // (smaller x) - (bigger x) = (x total distance)
    
if(x1 x2xdist x1 x2// IF x1 is the smaller ...
    
else xdist x2 x1// else (x2 is the smaller ...)
    // same for y distance
    
if(y1 y2ydist y1 y2;
    else 
ydist y2 y1;
 
    
// from wikipedia article on triangle...
    // "in any right triangle, the square of the length of the hypotenuse equals
    // the sum of the squares of the lengths of the two other sides."
    // using this...
    // distance(square) = xdist(square) + ydist(square)
    // so: square root of ( xdist(square) + ydist(square) ) = the distance.
    
distance floatsqrootfloatpower(xdist,2.0) + floatpower(ydist,2.0) ) ;
    return 
distance // The function return the distance Float value
}
?>


(http://snoob-community.wikispaces.com/file/view/distance.png/67799945/distance.png)

Vince
Titre: Re : Compter les kilométres d'un véhicule
Posté par: cristab le 05 Mai 2011, 14:34:37
as tu compris la moitier de ce que tu vient de poster Vince
Titre: Re : Re : Compter les kilométres d'un véhicule
Posté par: Gilux le 05 Mai 2011, 16:47:35
as tu compris la moitier de ce que tu vient de poster Vince

Ben c'est une application basique du théorème de Pythagore, donc bon c'est pas très dur  :)
Titre: Re : Compter les kilométres d'un véhicule
Posté par: Ssk le 05 Mai 2011, 16:52:14
les conditions

<?php

    
// (smaller x) - (bigger x) = (x total distance)
    
if(x1 x2xdist x1 x2// IF x1 is the smaller ...
    
else xdist x2 x1// else (x2 is the smaller ...)
    // same for y distance
    
if(y1 y2ydist y1 y2;
    else 
ydist y2 y1;

sont un peu inutile, vu que les carrés vont régler ce problème.

#define DISTANCE(%1,%2,%3,%4,%5,% ) ( floatsqroot( ( %1-%4)*( %1-%4) + ( %2-%5)*( %2-%5) + ( %3-%6)*( %3-%6) ) )

à tester
Titre: Re : Compter les kilométres d'un véhicule
Posté par: Lucifer le 05 Mai 2011, 19:29:31
Hummm....Intéressant, je vous remercie de vos réponses :).