GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Jones le 24 Novembre 2010, 01:34:56

Titre: [TUTO]Créé une commande /aide
Posté par: Jones le 24 Novembre 2010, 01:34:56
Bonsoirs Chers Membres de GTAOnline
Vue que je n'est pas pu créé un nouveaux sujet dans tutoriel je les créé ici

Voici une petites vidéo qui est expliquer un peu comment créé une commandes d'animation facile.

Tutoriel Pawno (http://www.youtube.com/watch?v=AqkdiksdG48#)







Les Setups :

Setups 1

Vous devez toujours commencé une commandes par un if(!strcmp Ceci veux plutot dires si le joueur écris la commandes dans sa balise Texte par defauts ( t )
Qui ressembleras a sa sur votre pawno.
 if(!strcmp
Setups 2
La commandes doit toujours vérifier si le joueurs est connecté ( Sur la Jeux Spawn/Connecté avec son mdp etcs )
Vous devrez écrires cela :


   {
   if(IsPlayerConnected(playerid))
   {
en bas de cela

if(!strcmp(cmdtext, "/aide", true))
Qui feras tout réunis.
if(!strcmp(cmdtext, "/aide", true)) // By Jones
{
   if(IsPlayerConnected(playerid))
   {


Setup 3

Biensur pour créé une commandes il ne fauts pas juste du textes... il faut de la couleurs etcs ...
Avec ces base au dessus vous devrez pouvoir créé n'importe quoi (Enfin ...)

Voici la Commandes /aide par examples
   if(strcmp(cmd, "/aidegeneral", true) == 0)
{
     if(IsPlayerConnected(playerid))
     {
       SendClientMessage(playerid, COLOR_WHITE,":: Compte :: /regles /ident /stats /changerpass /niveausup /amelio /propose");
SendClientMessage(playerid, COLOR_WHITE,":: Générale :: /payer /chariter /temps /acheter /delouervoiture /delouermoto /changerclef /id /boire /vetements /opendoor(/od)");
SendClientMessage(playerid, COLOR_WHITE,":: Générale :: /resetamelio(50k) /acheterarme /fermer /skill /permis /montrerpermis(/mp) /rapport /stopanim");
SendClientMessage(playerid, COLOR_WHITE,":: Générale :: (/ra)pport /annuler /accepter /ejecter /utiliserdrogue /contrat /v /membres");
SendClientMessage(playerid, COLOR_WHITE,":: Générale :: (/f)enetre /piece /coffre (/inv)entaire /visiter /ko /donner /ouvrirgrille (/og) /carteidentite /fumer /banderyeux /ligotter /deligotter /chercherportefeuille");
SendClientMessage(playerid, COLOR_WHITE,":: Générale :: /valise (avoir un valise) /evalise(l'enlever) /irc /nouveauter");
SendClientMessage(playerid, COLOR_WHITE,":: Générale :: /ceinture");
SendClientMessage(playerid, COLOR_WHITE,":: Joueur :: /combat /animhelp(2) /afk /back");
  SendClientMessage(playerid, COLOR_WHITE,":: Chat :: (/p)me (/c)rier (/o)oc /bas (/b) (/f)action /me /do /togooc /tognews /togfam /togpm /togphone");
SendClientMessage(playerid, COLOR_WHITE,":: Banque :: /compte /retirer /deposer /virement  /atm ")
SendClientMessage(playerid, COLOR_YELLOW2,"N'oubliez pas de faires /nouveauter quand que la Version Change.")
SendClientMessage(playerid, COLOR_WHITE,":: Nouvelles Commandes Version 3 :: Nouveau Pay'n'spray : /epns /spns ");
SendClientMessage(playerid, COLOR_WHITE,":: Nouvelles Commandes Version 3 :: La commande /nomoff et /nomon a partie du level 14");
SendClientMessage(playerid, COLOR_WHITE,":: Nouvelles Commandes Version 3 :: Un nouveau Peages RP .")
SendClientMessage(playerid, COLOR_WHITE,":: Nouvelles Commandes Version 3 :: Nouvelles drogues ajouté")
SendClientMessage(playerid, COLOR_WHITE,"Tout les Nouvelles commandes son en [BETA TEST] possibilité de bugs.");
     }
return 1;
   }

Biensur pour les Messages au Joueur la base est SendClientMessage
playerid prend l'id du joueur. L'examples COLOR_WHITE est une couleurs blanches (Je script en anglais)
Ainsi l'ouverture du texte avec un " sans oubliez la , après le WHITE et la fin du textes "); qui ferme .
Ensuites la fin du script /aidegeneral
 
} (Ferme le Script)
      return 1; ( Serre a aidé le compileur votre script ainsi que de fermer votre script)
} ( Serre a fermer aussi votre script =) )

Si vous voulez réouvrire une commandes juste en bas il vous suffiras juste de faires
if(strcmp(cmd,

Merci d'avoir lu

Ps : Ses mon premier Tutoriel a vie soyez vigilant =). ...

++ Jones ++
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Karting06 le 24 Novembre 2010, 07:23:57
Bon idée ! Mais pourquoi voir si le joueur est connecté? Parce que quand il fait la commande il doit être connecté non?
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Ssk le 24 Novembre 2010, 09:04:42
Désolé de le dire, mais ce n'est pas du tout un tutoriel.
Presque tout ce que tu décris dans le tutoriel est faux.



Une commande peut ne pas commencer par strcmp, strcmp est une fonction qui permet de comparer deux chaine de caractères et renvoie une valeur 0 si les chaines corresponde entre elles, ou autre si elles ne le sont pas.

Ensuite tu dit que l'ont doit toujours vérifier que le joueur qui tape la commande est connecté, mais c'est pas très logique vu que s'il tape la commande cela veut bien dire qu'il est connecté, donc le IsPlayerConnected dans une commande ne sert strictement à rien.
Ensuite le return, n'aide pas le compilateur à fermer notre script, mais il sert plutôt à retourner une valeur dans une fonction et arrêter son exécution, voila tout.

Bien que l'intention soit bonne, il ne faut pas dire des choses fausse pour les nouvelles personnes qui ne comprennent pas encore bien le pawn ^^
Sinon je te conseil aussi d'améliorer ton orthographe, voila tout :)

Titre: Re : [TUTO]Créé une commande /aide
Posté par: Karting06 le 24 Novembre 2010, 13:50:52
C'est vrais ce que tu dis. Mais Il est anglophone !
En plus, tu ne peux pas mettre cmd ! Il faut mettre CmdText ! Ou bien faire avec new, mais ça deviendra compliqué!
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Jones le 25 Novembre 2010, 00:18:13
Sasuke j'ai éssayer de faires un tutoriel pour des débutants et non pour des Pro comme toi =) tu doit comprendre.J'ai du faires sa simple jpas pour sortire des vocabulaires qu'il ne comprendrons pas et de 2 : Je script en anglais et pas en francais ses deux différentes choses bien différentes .

ps : Merci Karting de prendre ma défense.

++Jones++

Titre: Re : [TUTO]Créé une commande /aide
Posté par: Ssk le 25 Novembre 2010, 07:47:25
Justement le but d'un tutoriel est d'expliquer aux nouveaux le fonctionnement de chaque bouts de code pour qu'ils puissent comprendre ^^

Sinon j'ai pas trop compris l'argument du "je code en Anglais", on le fais tous en Anglais ^^
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Karting06 le 25 Novembre 2010, 16:23:12
Non, y a des gens quand il font une forwarde ou autre chose il utilise un mot français!
Titre: Re : Re : [TUTO]Créé une commande /aide
Posté par: S!m le 25 Novembre 2010, 18:17:53
Salut,

Non, y a des gens quand il font une forwarde ou autre chose il utilise un mot français!

et qu'es-ce que ça change? Que tu le veule ou non, la majorité de ton code est en anglais. D'ailleurs, l'anglais se prête bien mieux que le français pour ce genre de chose. Le français est une langue littéraire, pour les applications en sciences etc. Elle est plus difficile à utiliser que l'anglais. Ça ne sert à rien de contester, c'est plutôt connu, dans les domaines scientifiques on utilise toujours l'anglais.

Ensuite, le fait qu'il "code en anglais", ne change absolument rien à ce que Sasuke disait. Que tu fasse un test IsPlayerConnected en français ou en anglais, ça teste quand même toujours si le joueur est connecté. Les commentaires de Sasuke ne concernent en rien la langue, c'est l'explication qu'il corrigeait.

Sur ce, retour au sujet: bon tuto Jones

++Sim++
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Jones le 26 Novembre 2010, 15:22:32
J'ai éssayer de faire mon possible pour que les nouveaux comprennent le but ses qu'il faut qu'ils comprennent non?
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Ssk le 26 Novembre 2010, 17:25:50
C'est un peu ce qu'on dit, le but est qu'ils comprennent et non pas déchiffrer ce que tu veut leur expliquer ^^
Titre: Re : [TUTO]Créé une commande /aide
Posté par: Jones le 27 Novembre 2010, 05:56:37
ahhh j'ai éssayer de le faire simple pourtant =O


++Jones++