GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: stuners le 03 Septembre 2007, 01:34:08
-
bonsoir , j'ai des erreur dans mon script que j'ai esayer de resoudre mais je n'y arrive pas
les voici:
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(757) : warning 217: loose indentation >>>>>pas important
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(761) : warning 217: loose indentation >>>>>pas important
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(763) : warning 217: loose indentation >>>>>pas important
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(766) : warning 217: loose indentation >>>>>pas important
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(883) : warning 202: number of arguments does not match definition >>>>>pas important
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(901) : error 017: undefined symbol "ownedcar"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(901) : warning 215: expression has no effect
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(901) : error 001: expected token: ";", but found "]"
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(901) : error 029: invalid expression, assumed zero
C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(901) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
si quelqu'un pouver m'aider svp ( je post les ligne )
merci de vos futur reponse Stuners
-
899 if (IsPlayerInAnyVehicle(playerid) == 1)
900 {
901 SetVehicleToRespawn(ownedcar[playerid]);
902 ownedcar[playerid] = GetPlayerVehicleID(playerid);
903 dUserSetINT(PlayerName(playerid)).("car",ownedcar[playerid]);
904 owner[ownedcar[playerid]] = playerid;
905 SendClientMessage(playerid,COLOR_YELLOW,"[PURCHASE]: Congragulations! You have purchased a new car.");
906 GivePlayerMoney(playerid,-5000);
907 }
908 else
je precise juste que c'est pour la command /buycar (y a t-il une erreure???)
Stuners
-
En fait, c'est tout la même erreur (pour la ligne 901).
Mais c'est la première qui compte dans ce cas : undefined symbol "ownedcar"
Le compilo te dit juste que la variable ownedcar n'a pas été définie.
Donc je pense qu'une ligne du genre new ownedcar[MAX_PLAYERS]; en haut de ton script résoudra toutes tes erreurs et warnings de la ligne 901.
De plus, quand tu dis que "number of arguments does not match definition" n'est pas important, je ne suis pas d'accord avec toi, ceci peut très facilement faire planter ton serveur. Je te conseille vivement de corriger ce warning en mettant le bon nombre de paramètres pour la fonction située à la ligne 883 (ou autre si tu as fait des modifs entre temps).
Pour ce qui est des autres warnings (loose indentation), par principe, élimines les (en ajoutant ou enlevant des tabulations aux lignes concernées).
Ca évitera de louper un warning important qui serait "caché" parmis ceux-ci. (mais bon seulement 4 erreurs d'indentation sur un script d'au moins 900 lignes c'est pas mal).
Commandement n°5 : Tu compileras sans warning ! :)
++
Syg
-
merci syg pour tes reponse , mon script fait 1500 et quelque ligne
donc new ownedcar[MAX_PLAYERS]; g esayer deja avant tu me dise et sa naver pas marcher , je vais reasayer et je te tien aucourant pour les erreur je vais voir merci
Stuners
-
je le met tout en haut du script , 2 erreur en plus donc je le met avec les autre new mais sa ne marche pas et sa ne m'ajoute pas d'erreur
que faire??
merci d'avance
Stuners
-
C'est quoi les deux erreurs en plus dont tu parles ?
Et quand je dit "en haut de ton script", je veux dire en haut du script qui contient les lignes en questions bien sur et "en haut" veut dire juste après les lignes d'include (#include <...>)
++
Syg
-
g mit sous les include et les erreur se reparer pas
il 'y a aucune soluce :( :dejadehors
merci quand meme stuners
-
Ok, MAX_PLAYERS est défini dans a_samp.inc donc la déclaration de ton tableau doit se trouver après la ligne
#include <a_samp>.
Si tu n'as pas inclu a_samp, rajoutes le ligne ci-dessus dans ton script et tout devrait être OK.
Donc pour récapituler :
#include <a_samp>
#include ....
new ownedcar[MAX_PLAYERS];
new ....
[reste du script]
++
Syg
-
#include <a_samp>
#include <core>
#include <float>
new ownedcar[MAX_PLAYERS];
tjr les erreur
Stuners
-
je precise , j'ai les meme erreur pour la ligne d'en dessous
SetVehicleToRespawn(ownedcar[playerid]); <<<< on vien de la corriger
Ownedcar[playerid] = GetPlayerVehicleID(playerid); <<<<maintenant les erreur sont la
Stuners
-
bon personne?
je croit que sa va etre dure a renlever tout ce que j'ai mit pour qu'il y est ces ereur :'(
merci a toi Syg ( j'abandonne)
Stuners
-
Jouons au jeux des 1 erreur.
Voici la ligne dans ton premier post :
ownedcar[playerid] = GetPlayerVehicleID(playerid);
Et voici la ligne dans ton dernier post:
Ownedcar[playerid] = GetPlayerVehicleID(playerid);
Est-ce que tu vois la différence ?
Oui, ha, tu étais juste inattentif .... pas grave, ça arrive à tout le monde (dans la plupart des cas, on ne voit pas ses propres erreurs)
Non, heu, ..... (même remarque que précédement)
Mais si tu modifies ton script en cours de route, ça n'ira pas.
Allez, je te le dit : dans la première ligne (qui est le bonne), le o de owned est en minuscule alors que dans la deuxième ligne, celle qui te met des erreurs, le o est en majuscule.
Et en PAWN, ownedcar et Ownedcar sont deux variables DIFFERENTES car PAWN est "case-sensitive".
++
Syg
-
ok si j'ai bien comprit faut je mete une minuscule au lieu d'un majuscule?
j'ai du mal a comprendre si c'est sa , j'ai esayer j'ai + d'erreur
merci
Stuners
-
Cool, tu vois, faut jamais désespérer.
++
Syg
-
lol mais si je met une minuscule , j'ai encore plus d'erreur et si je met une majuscule j'en est moin
a la ligne 904 je met une miniscule , il me rajoute 5 erreur a la 906 et sir je emt une majuscule il me rajoute pas d'erreur :s
Stuners
(quand je diser + d'erreur ceter pas que j'en aver pu c'est qu jen est aver plus^^)
-
juste , j'ai reussi a corriger une erreur a la ligne 904 sa rajouter des erreur a la ligne 906 a cause de la ligne 905
Stuners
-
Houla, reprend le bout de script de ton premier post, il n'avait qu'une seule erreur : l'absence de déclaration du tableau ownedcar.
Sinon, SPAWN fait la différence entre les majuscules et les minuscules (case sensitive) donc fait bien attention de toujours écrire un variable de la même façon.
++
Syg
-
merci syg , j'ai rajouter sa : #include <dudb>
et toute les erreur se sont enlever mais une seul c'est rajouter , sa me soulage deja ^^
l'erreur est: C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\Debut.pwn(6) : fatal error 100: cannot read from file: "dudb"
sa veut dire quoi? c'est la premiere fois je voie cette erreur
merci Stuners
-
Qu'il te manque le fichier "DUDB" pour pouvoir compiler !!
C'est bien ca ??
AK NV.
-
le fichier dudb je l'est mit mais tjr lerreur
Stuners
http://www.gtaonline.fr/forums/index.php/topic,1175.msg8076.html#msg8076 <<<g esayer de faire pareil mais sa marche pas :'(
Stuners
-
Le fichier DUDB.INC doit être placé dans le répertoire INCLUDE qui se trouve dans le répertoire PAWNO.
++
Syg
-
oui je les mit ;) je verai ce week end avec l'ecole pas trop le temp
merci encore syg (tu doit te dire il me saoule lui^^ n'hesite pas a m le dire lol)
jte dit si s amarche ou pas demain
Stuners
-
bon bah je croit que c'est sans espoir :'( , meme si je supprime mes derniere donné et bah j'i une 20e d'erreur
doije recommencer un script??
merci a toi syg
Stuners
-
Met le sur pastebin et envoi par PM je vais voir ;)
AK NV.
-
ok merci
Stuners
-
probleme resolue ;) merci a vous tous ( j'ai refait le script )
-
svp , ou pourrais - je lavoire merci
jai le meme /purchase c nule ... sa dit meme pas que c'est la mienne ou ect :S