[Exercices] Apprentissage du Pawn
#1

Bonjour а tous,

Du fait du nombre de posts ouverts chaque jour pour des choses basiques je dйcide de crйer ce petit topic afin d'amйliorer le niveau de script des dйbutants.

Commenзons d'abord par les rиgles:

1) Les confirmйs en Pawn n'ont pas le droit de poster un code demandй en йxercice.
2) Ce topic n'est pas une chatroom veuillez uniquement poster les codes demandйs ou des instructions sur les codes demandйs.
3) Pas de moqueries c'est de l'apprentissage que l'on fait ici on est pas tous bons ici.
4) Une fois un йxercice terminй, sont autorisйs а poster un nouvel йxercice: Tous les confirmйs en Pawn (je ne vais pas citer tout le monde mais voici les plus actifs: Darreugne, Vukilore, Decondelite ?, scott1 s'il le dйsire,leo3412, pseudonyme et moi mкme bien sur ^^)
5) Il est interdit de copier-coller un code depuis un GM nous voulons des rйponses simple, avec juste les variables qu'il faut pas plus, de toute faзon nous savons reconnaitre les codes dйjа йxistants

Passons maintenant au premier йxercice, je voudrais que via la commande "/deagle" le serveur me donne un deagle avec 63 balles et un petit message de couleur bleu clair me disant "Vous avez reзu un deagle de 63 balles".

Pour rйpondre, il est conseillй de coder ceci sur Pawno ou un autre йditeur texte et ensuite poster ici le code entre les balises [*pawn] [*/pawn] (sans les * ) ne mettez pas de pastebin s'il vous plait car pour une meilleure visibilitй, le code sur le forum se verra plus rapidement.

Voilа а vos claviers et bonne chance !
Reply
#2

Bonjour,
J'ouvre le bal йspйrant que les nouveaux y participrent .

En Dcmd c'est ce que j'utilise.

pawn Code:
dcmd(deagle,6,cmdtext);
pawn Code:
dcmd_deagle(playerid,params[])
{
    #pragma unused params
    GivePlayerWeapon(playerid,24,63);
        SendClientMessage(playerid,COLOR_LIGHTBLUE,"Vous avez reзu un deagle de 63 balles.");
    return 1;
}
Quand est ce que on passe au choses serieuses ? ^^
Reply
#3

Maintenant j'aimerai la rйponse en commande normale (sans dcmd ou zcmd)
Reply
#4

Bonjour, voici mon code mais il y a une erreur ... Je n'arrive pas а la trouvйe.

pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/deagle", cmdtext, true, 10) == 0)
    {
    GivePlayerWeapon(playerid,WEAPONSKILL_DESERT_EAGLE,63);
    SendClientMessage(playerid,COLOR_WHITE,"{33CCFF}Vous avez reзu un deagle de 63 balles");

        return 1;
    }
    return 0;
}
Reply
#5

Quote:
Originally Posted by Midilix
View Post
Bonjour, voici mon code mais il y a une erreur ... Je n'arrive pas а la trouvйe.

pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/deagle", cmdtext, true, 10) == 0)
    {
    GivePlayerWeapon(playerid,WEAPONSKILL_DESERT_EAGLE,63);
    SendClientMessage(playerid,COLOR_WHITE,"{33CCFF}Vous avez reзu un deagle de 63 balles");

        return 1;
    }
    return 0;
}
Ton code est copiй de quelque part car WEAPONSKILL_DESERT_EAGLE n'existe pas dans les fonctions de sa:mp et ton erreur est lа
Reply
#6

EFFACER
Reply
#7

Ta couleur n'existe pas dans ton GM, je n'ai d'ailleurs pas demandй un fichier .pwn mais juste le code sur le forum et au passage, ce n'est pas la bonne couleur.
Reply
#8

Message effacer
Reply
#9

Quote:
Originally Posted by 'seraphin
View Post
Bonne idee ce post
2) Ce topic n'est pas une chatroom veuillez uniquement poster les codes demandйs ou des instructions sur les codes demandйs.

Merci de respecter les rиgles.
Reply
#10

**Epinglй**
Reply
#11

Merci

J'attends encore la commande /deagle sans dcmd ou zcmd
Reply
#12

Bon allez x)

pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp("/deagle", cmdtext, true, 10) == 0) {
        GivePlayerWeapon(playerid, 24, 63);
        SendClientMessage(playerid, 0x48A4FFC8, "Vous avez reзu un Deagle avec 63 balles.");
        return 1;
    }
    return 0;
}
Sinon, chaque exercice durera jusqu'а quand ?

EDIT : @Shidony, j'en profite pour te dire qu'il n'y a pas d'accent aigu а exercice
Reply
#13

pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])//"Callback"
{
      if(!strcmp("/deagle", cmdtext, true))//Condition а partir de la valeur retournйe par la fonction strcmp()
      {
                 GivePlayerWeapon(playerid, 24, 63);//Appels de fonction
                 SendClientMessage(playerid, 0x27BCE7FF, "Vous avez obtenue un Desert Eagle avec 63 munitions");
             
                  /*
                    NB: Je n'utilise pas de macro pour la couleur car on ne l'utilise qu'une fois dans ce "mini-script"
                  */


           return 1;
      }

   return 0;
}
Je ne suis pas citй parmi les scripteurs confirmйs actifs, alors je pense que j'ai le droit de participer
Reply
#14

Hйhй juju, je t'avais oubliй et puis aprиs tout je ne connais pas ton niveau en script.

@Urefeu: il n'y a pas de date de fin pour chaque йxercice, s'il ne fait pas fureur ou si personne n'y arrive, soit je donnerai la solution, soit on passera а quelqu chose d'autre et on reviendra sur l'йxercice non rйsolut.

Allez, si d'ici ce soir, les personnes citйes dans la liste n'ont pas postй un йxercice, j'en mettrai un. (juju tu n'es pas citй donc tu ne peux pas poster encore mais je te rajouterai bientфt ^^)
Reply
#15

Je participe juste pour le plaisir. Je ses pas si je suis confirmer.

Dans:
pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])
La commande:
pawn Code:
if(strcmp("/deagle", cmdtext, true, 10) == 0)
{
        GivePlayerWeapon(playerid, 24, 63);
        SendClientMessage(playerid, 0x0EB5DF, " Vous venez de ramasser un Deagle de 63 balles au sol.");
        return 1;
    }
    return 0;
}
Reply
#16

Salut , je veux bien participer а tes petits exercices vu que je suis dйbutant en scripting x) ,
Donc logiquement , vu que c'est une commande ( On va prйciser hein )


Je reposte le pawn , je me suis plantй en fin de compte xD
Reply
#17

Cet exercice est terminй les gars ^^ comme dit plus haut, j'attends ce soir pour vous donner un nouvel йxercice si aucune personne confirmйe (citйe dans la liste dans le premier post) n'a postй un йxercice. Et bien sur, tout le monde peut y rйpondre .
Reply
#18

Quote:
Originally Posted by MeowHD
View Post
Salut , je veux bien participer а tes petits exercices vu que je suis dйbutant en scripting x) ,
Donc logiquement , vu que c'est une commande ( On va prйciser hein )


Je reposte le pawn , je me suis plantй en fin de compte xD
Bonjour, effectivement ta fait une petite erreur. Si tu vois quand tu compile ta a 26 erreur se qui veut dire que la oublier un "}/{".

L'erreur viens d'ici:

pawn Code:
return 0;
    }
On devais faire plutot ceci:

pawn Code:
return 1;
    }
    return 0;
}
Et aussi ici il te manque ceci
pawn Code:
" if( " strcmp("/eagle", cmdtext, true, 10) == 0)
Se qui donne:
pawn Code:
if(strcmp("/eagle", cmdtext, true, 10) == 0)
Cordialement.

PS: Dsl Shidony, je voulais qu'il comprenne ses erreur.
Reply
#19

Mais pourquoi mettre un "return 0;" а la fin? Sa serrais mieux si on supprime le "return 1;" non?
Reply
#20

Tout simplement car on termine un public par un return 0; return 0; signifie qu'on retourne au dйbut de la callback donc une fois qu'elle est finie, on peut retourner au dйbut ^^.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)