GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: GtaManiac le 04 Novembre 2007, 02:52:54

Titre: Probleme Script
Posté par: GtaManiac le 04 Novembre 2007, 02:52:54
Soir tlm,

Maniac se lance enfin dans le scripting , j'ai passer 3 heure a mettre des véhicules dans San Andreas et il est  maintenant 3H du mat je voudrais mettre des commandes mais je grille plus vite mes neuronnes que mes cellules j'en chie d'une force , il va faire les gars vite une cuvette !  :lmfao  , sérieusement voici mes questions :


1) J'ai un probleme avec la séléction de mes joueurs , je reste sur Vinewood et je sélectionne " dans le vide " pas de joueur qui apparait rien , mais quand je clique sa marche tres bien je suis téléporter a mon spawn .

2) J'ai un mega prob avec mes commandes ( je suis LOW ne l'oublier pas ^^ ) j'ai fait quelque commande mais sa bug quand je compile , voici les commands :
http://pastebin.gtaonline.fr/pastebin.php?show=177 ( le script est trop grand je l'ai mis dans pastebin )  :)

Bien sur j'ai fait une recherche mais les bouts de code que j'ai pris et les explications on donner un seul et unique même résultats : ERROR  :D


J'impleure donc votre aide car sinon je vais plus pouvoir m'arracher les cheveux ^^ .
Titre: Re : Probleme Script
Posté par: vincentdu90 le 04 Novembre 2007, 10:13:27
Ben moi je me suis crée un gamemod a partir du fichier new dans pawno et j'ai ajouter ça pour les skins:

Ceci d'abord au dessus des include:

forward SetupPlayerForClassSelection(playerid);
et ca a la fin de mon script:

public SetupPlayerForClassSelection(playerid)

{

SetPlayerInterior(playerid,14);

SetPlayerPos(playerid,258.4893,-41.4008,1002.0234);

SetPlayerFacingAngle(playerid, 90.0);

SetPlayerCameraPos(playerid,256.0815,-43.0475,1003.0234);

SetPlayerCameraLookAt(playerid,258.4893,-41.4008,1002.0234);

}
Titre: Re : Probleme Script
Posté par: Sismix84 le 04 Novembre 2007, 10:17:29
Vincent à tout juste, rajouter ce code à ton script pour pouvoir séletionner ton skin. Pour tes commandes, je croi que tu as oublié de mettre return 0;
}

à la fin des commandes.
Titre: Re : Probleme Script
Posté par: vincentdu90 le 04 Novembre 2007, 10:25:10
Merci pour une fois que j'ai juste mais bon j'ai prit exemple sur sftdm  :)








-------------------------------------------------------------------
Mardi c''est mon anniversaire  :birthday
Titre: Re : Probleme Script
Posté par: OG_polvunak le 04 Novembre 2007, 10:29:34
Je crois qu'a la ligne :

GameTextForPlayer(playerid,"~p~Bienvenue au Skate Park",2500,5);

}  celui ci est en trop a mon avis

return 1;

}

Pour vincent:

Vivement mardi  :cheers
Titre: Re : Probleme Script
Posté par: vincentdu90 le 04 Novembre 2007, 10:39:40
Voila essaye ça Gta Maniac je croit pas voir d'erreur  :happy



Merci a toi Polvunak  :happy :)
Titre: Re : Probleme Script
Posté par: GtaManiac le 04 Novembre 2007, 11:24:13
Lu,

J'ai beaucoup moin d'erreur mais j'en ai quand même encore 5  ;) .

La séléction ne marche pas ( je reste toujours a vinewood ) pour les cmds j'ai beaucoup moin d'erreur mais il men reste encore 5  ;) , je sais pas se sont lequel pourtant j'ai tout bien mis ...
Titre: Re : Probleme Script
Posté par: [StAfF]MaN le 04 Novembre 2007, 13:19:29
j'ai juste une question a te poser ^^
 
es tce que tu a choisi des interrierus pour la sélection des player ?? C'estSUREMENT même très Fortement problable que se soit a cause de ça, j'ais eu le même problème

Ce qui est pas très marrant surtout si tu a choisi des interrieurs différents pour chaques class de players

Donc en faite, tu cherche l'ID de l'interrieur qui correspond a l'emplacement de ton plaer, et tu marque l'ID de l'interrieur la

SetPlayerInterior(playerid,14); (14 et 0 sont les mêmes, c'est San Andreas) donc tu remplace ce 14 par l'ID qui convient ^^

++
Titre: Re : Probleme Script
Posté par: Syg le 04 Novembre 2007, 14:58:37
Je viens de corriger ton bout de script.
Le problème venait (comme c'est le cas très souvent) des accolades manquantes (notament après if (IsPlayerInAnyVehicle (playerid)))
Et quand on oublie une accolade, les erreurs que le compilateur donne sont souvent très bizzares.
Une façon sùre (et pas chère) d'éviter ce genre de problème c'est d'indenter correctement son script.

Tiens :
http://pastebin.gtaonline.fr/pastebin.php?show=180

++
Syg
Titre: Re : Re : Probleme Script
Posté par: NatiVe™ le 04 Novembre 2007, 15:14:02
Une façon sùre (et pas chère) d'éviter ce genre de problème c'est d'indenter correctement son script.

Ou d'eviter le copier / coller !

AK NV.
Titre: Re : Probleme Script
Posté par: Syg le 04 Novembre 2007, 15:16:40
Ce n'est pas un problème spécifique au copier/coller, mais à une indentation hasardeuse qui ne permet pas de voir où doivent aller les accolades qui manquent.
Mais ceci peut aussi arriver avec un copier/coller.

++
Syg
Titre: Re : Probleme Script
Posté par: GtaManiac le 04 Novembre 2007, 22:59:19
Merci SYG mais j'ai 21 errors quand je compile  , si tu veut je peut t'envoyer mon script entier  ;)

MAJ : bon voila mon script ENTIER ( avec des errors ) => http://pastebin.gtaonline.fr/pastebin.php?show=184

Il ne reste plus qu'a corriger les errors ( la séléction du joueur et les commandes )  ;)
Titre: Re : Probleme Script
Posté par: vincentdu90 le 05 Novembre 2007, 08:59:56
Euh les erreurs sont a quelle lignes ?
Titre: Re : Probleme Script
Posté par: Sismix84 le 05 Novembre 2007, 10:15:02
Sur le wiki de samp j'ai trouver un moyen de trouver facilement le numéro de l'intérieur, il faut taper /interior dans l'intérieur pour savoir l'intérieur dans lequel on se trouve.
Titre: Re : Probleme Script
Posté par: GtaManiac le 05 Novembre 2007, 11:16:27
Lu,

Les erreurs sont de la lignes 148 a 216 , et a la ligne 48 j'ai mis un SetPlayer mais je sais pas comment faire pour que quand je me connecte je soit dans un interrieur pour séléctionner un skin :)
Titre: Re : Probleme Script
Posté par: Sismix84 le 05 Novembre 2007, 11:36:29
Tu met un SetPlayerInterior(playerid,1);  (le chiffre 1 représente le numéro de l'intérieur, ce chiffre doit être modifier en fonction de l'intérieur que tu utilise)
Titre: Re : Probleme Script
Posté par: UrbanGhetto le 05 Novembre 2007, 11:50:55
2) J'ai un mega prob avec mes commandes ( je suis LOW ne l'oublier pas ^^ ) j'ai fait quelque commande mais sa bug quand je compile , voici les commands :
http://pastebin.gtaonline.fr/pastebin.php?show=177 ( le script est trop grand je l'ai mis dans pastebin )  :)

Bien sur j'ai fait une recherche mais les bouts de code que j'ai pris et les explications on donner un seul et unique même résultats : ERROR  :D

Et si tu nous donnais les erreurs ça serais pas mieux ?  ::)
Titre: Re : Probleme Script
Posté par: [StAfF]MaN le 05 Novembre 2007, 11:59:53
Je savais bien qui avais un prob avec les interrieurs ^^  :laugh
Titre: Re : Probleme Script
Posté par: GtaManiac le 05 Novembre 2007, 12:28:37
Voila les erreurs :

C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(118) : warning 217: loose indentation
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(155) : error 017: undefined symbol "COLOR_BLUE"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(161) : warning 219: local variable "cmd" shadows a variable at a preceding level
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(168) : error 017: undefined symbol "a"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(169) : error 017: undefined symbol "b"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(170) : error 035: argument type mismatch (argument 2)
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(173) : error 017: undefined symbol "a"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(174) : error 017: undefined symbol "VERT"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(166) : warning 203: symbol is never used: "Z"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(165) : warning 203: symbol is never used: "Y"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(164) : warning 203: symbol is never used: "X"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(179) : error 017: undefined symbol "a"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(180) : error 017: undefined symbol "b"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(181) : error 017: undefined symbol "a"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(183) : error 017: undefined symbol "VERT"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(161) : warning 204: symbol is assigned a value that is never used: "cmd"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(191) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(192) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(193) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(198) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(199) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(200) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(201) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(202) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(203) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(208) : error 017: undefined symbol "SendPlayerFormattedText"
C:\DOCUME~1\COMPAQ~1\MESDOC~1\SERVEU~1\pawno\GAMEMO~1\Maniac.pwn(209) : error 017: undefined symbol "SendPlayerFormattedText"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


21 Errors.
;)
Titre: Re : Probleme Script
Posté par: GtaManiac le 06 Novembre 2007, 00:55:42
Soir,

Je vien vous signaler que je n'est plus de probleme (pouvez supprimer le post au dessus ) :D , j'ai tout résolu tout seul ( mais  :laugh )  ...

MAIS : j'ai toujours un probleme avec ma commmande de téléportation , j'ai des errors un peu partout dans le script de la commande de téléportation , sinon le reste c'est nikel tout marche bien aucun bug  :)

Et se maléfique script de téléportation je l'ai retourner dans tout les sens j'ai pas pu le réparer comme pour mes autres errors  ;)

Voici le script :

public OnPlayerCommandText(playerid, cmdtext[])
{
    new cmd[256];
cmd = strtok (cmdtext, idx);


    else if(strcmp(cmdtext,"/skate", true)==0){
    if(IsPlayerInAnyVehicle(playerid))


a=random(10);
    b=random(10);
    GetPlayerPos(playerid,1613.0461,-2539.5403,13.5469);
    SetVehiclePos(VehicleID,1613.0461,-2539.5403,13.5469);
    SendClientMessage(playerid, COLOR_GREEN,"Tu a été téléporté au Skate Park");
    GameTextForPlayer(playerid,"~p~Bienvenue au Skate Park",2500,5);
    } else {
    a=random(10);
    b=random(10);
    SetPlayerPos(playerid, 1613.0461,-2539.5403,13.5469);
    SendClientMessage(playerid, COLOR_GREEN,"Tu a été téléporté au Skate Park");
    GameTextForPlayer(playerid,"~p~Bienvenue au Skate Park",2500,5);

return 1;
}


J'ai juste 4 petite error a corriger j'espere que vous pourrait m'aider :

error 012: invalid function call, not a valid address
error 001: expected token: ";", but found ")"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line
Titre: Re : Probleme Script
Posté par: Syg le 06 Novembre 2007, 01:21:44
Tiens, j''avais corrigé ton script et la fonction qui marche pas au passage.
http://pastebin.gtaonline.fr/pastebin.php?show=185

L'erreur principale de cette fonction c'était le GetPlayerPos au lieu d'un SetPlayerPos.
Sinon, j'ai ajouter des new devant a et b mais il faudrat peut-être que tu les enlève si tu as déjà fait un new a; et un new b;
La commande qui est dans le script que j'ai corrigé s'appelle /bmx mais je vois que tu es capable de changer ça.

++
Syg

Titre: Re : Probleme Script
Posté par: GtaManiac le 06 Novembre 2007, 02:17:50
Merci SYG sa marche super ( je dormirai moin con se soir  ;) ) , t'es un amour , smax  :-*