• 04 Juin 2026, 04:18:50


Auteur Sujet: compteur vitesse.  (Lu 9710 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne At1x

  • *
  • Criminel
  • Messages: 28
    • Voir le profil
Re : compteur vitesse.
« Réponse #15 le: 03 Août 2007, 17:43:31 »
C'est quoi cette histoire qu'un booléen n'est pas utilisable en pawn ? Bien sur que si c'est utilisable, d'ailleurs pour en faire un faites : "new bool:var;" et voila cette variable prend par défaut la valeur false(faux), vous pouvez aussi lui faire prendre la valeur true(vrai). :)

Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #16 le: 05 Août 2007, 00:00:15 »
Bonjour.

Citation du mini-cours de Syg: " Ensuite, on met en place notre commande "/vitesse" et là, on ne fait que sauvegarder la position (Xa, Ya, Za) du joueur dans un tableau (une entrée par joueur) et positionner un flag (un par joueur) pour dire que le joueur a demandé le compteur de vitesse."

Est ce que ça donne ceci ? http://pastebin.gtaonline.fr/pastebin.php?show=31

Voila c'était juste pour confirmation.
Merci.
@+++

Edit:
Je pense avoir terminé le script mais j'obtient l'erreur :" must be a constant expression, assumed zero. Quelqu’un peut-il m'expliquer dans quels cas peut-ont obtenir cette erreur (pour pouvoir corriger par moi-même) ?

Encore un edit. (hé oui !).
Voila sur le forum sa-mp.com, Le nom de fichier pawn-lang.pdf apparait souvent. Il me semble qu'il explique le pourquoi du comment des erreurs de compilation. Or il m'est impossible de mettre la main sur ce fameux fichier (sensé être dans le dossier pawno) les topic ou j'ai vu ce nom sont assez vieux (2006). Quelqu'un connait ce fichier ?

« Modifié: 05 Août 2007, 04:38:16 par sadmandono »


Hors ligne Aless

  • *
  • Bandit
  • Messages: 331
    • Voir le profil
Re : compteur vitesse.
« Réponse #17 le: 05 Août 2007, 13:50:20 »
Télecharge le fichier ZIP contenant le serveur 0.1b .

http://www.gtasa.fr/download.php?act=view&id=1090
My Dedicated Server:

Intel Core2Quad Q6600- 2.4GHz - LGA775 - 1066MHz FSB - 2x4 MB L2/L3
2x2GB - DDR2 - 667MHz - Corsair Value - 3.2 Go utilisable sur 32 bits
80GB 16MB Buffer SATA-2 7200 TPM + 1 TB 32 MB Buffer SATA-2 5400 TPM EcoGreen
OS: Ubuntu Linux Hardy Heron 8.04.3

Info serveur: http://www.aless-server.ch/psi/

Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #18 le: 05 Août 2007, 21:08:59 »
ok merci Alless(01) :)


Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #19 le: 07 Août 2007, 17:52:07 »
Petit problème. Il me semble que mon code soit correct. (Bon il y surement des erreurs que je n'arrive pas à voir, en cause mon très petit niveau  :bangin).
Mais j'ai l'impression que le Fonction SetTimer ne travaille pas.
Cela fait que je me retrouve avec deux coordonnées identiques pour les calculs. Ce qui fait donc que vitesse = 0.

http://pastebin.gtaonline.fr/pastebin.php?show=33

Si quelqu’un est capable de m'expliquer le pourquoi du comment, je suis preneur. merci :)


Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
Re : compteur vitesse.
« Réponse #20 le: 08 Août 2007, 21:50:26 »
attendons l avis le l expert syg :king

Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #21 le: 11 Août 2007, 01:43:49 »
L'expert SYG est en vacances :)
Bon je continu à chercher de mon coté. (J'attend tout de même un avis de Monsieur SYG.).
De toute façon je reposterais au cas ou.


Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : compteur vitesse.
« Réponse #22 le: 20 Août 2007, 02:03:58 »
Je répond d'abord à Atx1 (qui a raison) :
J'ai pas dit que les booléens n'étaient pas utilisables, j'ai dit que le type booléen n'existait pas en PAWN :
"pawn lacks the typing mechanism of C. pawn is an “integer-only” variety of C; there are no structures or unions, and floating point support must be implemented with user-defined operators and the help of native functions."
Pour ceux qui n'ont pas compris : "pawn n'a pas le même méchanisme de typage que le C. pawn est une variétée de C avec seulement le type entier ; il n'y a pas de structure ou d'union et le support des nombres en virgule flottante doit être implémenté par des opérateurs définis par l'utilisateur et à l'aide des fonctions natives." (Bon, d'accord, c'est pas forcément plus clair en français)
Citation de la doc officielle de PAWN (celle que cherche sadmandono).
Et, autant pour moi, il existe bien un tag bool: qui permet de limiter les valeurs d'une variable à 0 (false) ou 1 (true) et donc de définir (et d'utiliser) des booléens.

Et maintenant, je répond à sadmandono :

1 - La fonction c'est OnGameModeInit et pas OnGamaModeinit
2 - Le dernier paramètre de SetTimer est 0 ou 1 (false ou true), et dans ton cas c'est 1
3 - Ta fonction afficheVitesse NE doit PAS avoir de paramètre puisqu'elle va être appelée par le timer (qui ne lui passera pas de paramètre) et elle DOIT être "public".
4 - Tes tableaux positionJoueur[] et afficheCompteur[] doivent être déclarés en dehors de toutes fonctions. Les variables déclarées dans une fonction n'existent que pendant que le fonction est exécutée, elles sont détruites après.
5 - Ta fonction afficheVitesse doit contenir une boucle sur TOUS les joueurs (playerid indéfini) et testé si les joueurs sont connectés ou pas
6 - Toutes les variables de tes calculs doivent avoir le tag Float:
7 - Pourquoi est-ce que tu divises la distance par 125.400048 ? Je pense pas que ce soit nécessaire.
8 - Evites les printf toutes les secondes, c'est pas très pratique à lire
9 - Ta variable valide n'est pas utile, tu peux directement sauvegarder la position
10 - Pour la sauvegarde de la position, fais positionJoueur[playerid] = positionJoueur2[playerid];, il sauvegardera tout seul les 3 coordonnées

J'ai fait une correction de ton code, c'est plus simple : http://pastebin.gtaonline.fr/pastebin.php?show=41 mais tu n'est pas obligé de regarder tout de suite, tu peux essayer de corriger toi-même.

++
Syg
Courtesy of GtaManiac

Hors ligne Gr0und3r

  • ~Scripteur[A]~
  • *
  • Tueur en série
  • SiX Feet UnderGround
  • Messages: 108
    • Voir le profil
    • Site Sa-mp
Re : compteur vitesse.
« Réponse #23 le: 31 Août 2007, 16:21:05 »
Bonjour a tous!

Je voudrai poser une question a propos du Timer:

L'intervalle égale a quoi? minute, seconde, milliseconde?

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : compteur vitesse.
« Réponse #24 le: 31 Août 2007, 16:49:56 »
Les intervales de timers se donnent en millisecondes.

++
Syg
Courtesy of GtaManiac

Hors ligne Gr0und3r

  • ~Scripteur[A]~
  • *
  • Tueur en série
  • SiX Feet UnderGround
  • Messages: 108
    • Voir le profil
    • Site Sa-mp
Re : compteur vitesse.
« Réponse #25 le: 31 Août 2007, 16:51:48 »
Merci beaucoup

Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #26 le: 01 Septembre 2007, 21:27:05 »
Ok merci Syg. Je vais tenter de corriger cette multitude d'erreurs avant de jeter un œil à ta correction.

En tout cas merci pour ton aide précieuse ^^.

Je vais de ce pas, me pencher sur les corrections à apporter à mon script.

@+++

Merci.
 ;)


Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #27 le: 01 Septembre 2007, 22:15:05 »
on dois utiliser "forward" pour les prototype ???


Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : compteur vitesse.
« Réponse #28 le: 01 Septembre 2007, 22:52:33 »
Les seule fonctions à déclarées forward dans un script PAWN sont celles qui sont définies comme public.

Il n'y a que deux types de fonctions à definir comme public : les callbacks (comme OnGameModeInit) et les fonctions utilisées par les timers.
Pour les callbacks, la déclaration forward est déjà faite dans le fichier include a_samp.inc.
Donc il reste à la faire pour les fonctions utilisées par les timers.

++
Syg
Courtesy of GtaManiac

Hors ligne sadmandono

  • *
  • Nouveau
  • Messages: 13
    • Voir le profil
Re : compteur vitesse.
« Réponse #29 le: 08 Septembre 2007, 15:01:54 »
Bonjour.

Voila syg, j'ai presque fini les corrections. (Je suis un peu long car je ne me met pas a fond dans ce script. d'ailleur je "boss" sur d'autres).

J'ai une petite question.

j'ai plusieurs fois vu des bots sur des serveurs.

Comment est-ce possible, c'est des fonction officiel de samp ?

ça semble intéressant. Pour faire des missions en coop par exemple.