GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: dydy5910 le 18 Mai 2011, 09:10:03

Titre: [Limiteur de vitesse]
Posté par: dydy5910 le 18 Mai 2011, 09:10:03
Salut alors voila j'ai mit des radar en ville vitesse 70 pour pas se faire flasher mais c'est chaud de rouler moin que 70 donc je voudrait savoir si quelqu'un aurait un limiteur de vitesse comme dans les vrais voiture exemple :
Je suis en ville (ne pas rouler + que 70) je fait F5 un menu s'affiche et dit : Nombre de Km/h Maxi ?
Moi je met 70 puis Ok et si j'appuie a font sur Z (pour rouler) sa n'ira pas plus que 70  :cheers

Voila merci. Bonne matinée  :-[
Titre: Re : [Limiteur de vitesse]
Posté par: Gilux le 18 Mai 2011, 11:47:27
Salut,
Je ne vais pas pouvoir t'aider en entier, mais voici quelques pistes :

1) Le menu
Crée une variable speedLimite[MAX_PLAYERS] qui contiendra la limite de vitesse de chaque joueur.
Après, crée un menu avec une boîte de dialogue (ShowPlayerDialog) avec plusieurs propositions (50-70-90-110 etc, à toi de voir)
En fonction de la case sélectionnée, tu changes la valeur de la variable (speedLimite[playerid] = vitesse;)

2) Calcul de la vitesse
La formule qui calcule la vitesse est celle-ci : √ ((Velocité X²) + (Vélocité Y²) + (Vélocité Z²)) * 180
Pour avoir la vélocité X,Y et Z, utilise GetVehicleVelocity.

3) Création des fonctions
Avec le code que tu as ci-dessus, crée une fonction GetVehicleSpeed(vehicleid) (Regarde mon tuto si tu ne sais pas en créer une).
Essaye aussi d'inverser la formule pour faire une fonction SetVehicleSpeed qui sera utilisée plus tard si tu dépasses la limite. (Racine carrée : floatsqroot(nombre); )

4) Timer
Crée un timer qui se répète toutes les secondes (ou moins, si tu veux)
Dans celui-ci, vérifie la vitesse du joueur avec la fonction GetVehicleSpeed que tu auras créée, et compare-la à la variable du début (speedLimite)
Si la vitesse actuelle > vitesse maximale du joueur, on règle la vitesse SetVehicleSpeed
Sinon, on laisse tel quel.

Voilà, tu as déjà l'algorithme et la méthode, après si tu débutes en Pawn tu risques d'avoir quelques difficultés car c'est un truc complexe, mais c'est possible à faire ;)
++
Titre: Re : [Limiteur de vitesse]
Posté par: dydy5910 le 18 Mai 2011, 12:40:33
Je n'est pas compris les 3 derniere partie la première j'ai compris  :'(
Titre: Re : [Limiteur de vitesse]
Posté par: Gilux le 18 Mai 2011, 13:00:39
Essaye de te mettre à niveau, prend ton temps pour lire et avoir les notions de base :

http://www.gtaonline.fr/forums/index.php/topic,11593.0.html (http://www.gtaonline.fr/forums/index.php/topic,11593.0.html)
http://www.gtaonline.fr/forums/index.php/topic,11595.0.html (http://www.gtaonline.fr/forums/index.php/topic,11595.0.html)
http://www.gtaonline.fr/forums/index.php/topic,11688.0.html (http://www.gtaonline.fr/forums/index.php/topic,11688.0.html)

++
Titre: Re : [Limiteur de vitesse]
Posté par: Ssk le 18 Mai 2011, 13:23:18
J'avais déjà résolut ce problème, fais une recherche !
Titre: Re : [Limiteur de vitesse]
Posté par: dydy5910 le 18 Mai 2011, 15:13:17
Envoi le lien s'il te plaît car vu le nombre de message qu'il y a ici meme si je fait Limiteur de vitesse dans recherche sa sera dur
Titre: Re : [Limiteur de vitesse]
Posté par: Karting06 le 18 Mai 2011, 16:14:42
Sur le forum, j'ai trouvé ça:
http://www.gtaonline.fr/forums/index.php/topic,11577.msg202831.html#msg202831 (http://www.gtaonline.fr/forums/index.php/topic,11577.msg202831.html#msg202831)
et
http://forum.sa-mp.com/showthread.php?t=131591&highlight=control (http://forum.sa-mp.com/showthread.php?t=131591&highlight=control)
Titre: Re : [Limiteur de vitesse]
Posté par: Ssk le 18 Mai 2011, 16:45:21
J'ai tapé "limite velocity" dans la barre de recherche, et voila ce que j'ai trouvé

http://www.gtaonline.fr/forums/index.php/topic,11739.msg203259.html (http://www.gtaonline.fr/forums/index.php/topic,11739.msg203259.html)
Titre: Re : [Limiteur de vitesse]
Posté par: dydy5910 le 18 Mai 2011, 20:55:21
Je vous remerci énormement vous êtes vraiment très simpa  :laugh