Utilisateur:Dede NetWork
Un article de Wikipédia, l'encyclopédie libre.
Bienvenue sur la page Wiki de Dede !
Sommaire |
[modifier] Rubriques traitées par sujets (cliquez ici !!)
- Structure, syntaxe, organisation des conditions. > Lire !
[modifier] Les conditions
Les conditions servent à vérifier si une valeur, un paramètre est vrai ou faux et d'agir selon des actions définies.
Il y a 3 "variantes" aux conditions :
- if
- else if
- else
Ces 3 variantes se traduise en français comme suit :
- if = Si
- else if = Sinon si
- else = Sinon
Ces variantes ont aussi une structure précise : on ne peut pas les placer dans n'importe quel ordre !
- Toute condition commence par if
- Suivent après les else if
- Et vient en dernier le else
Un exemple simple d'utilisation:
new un_chiffre = 2;
if (un chiffre == 0) |
Ici donc la console affichera :
Votre chiffre n'est pas egale a 0 ni 1
Pourquoi ?
Et bien, réfléchissez !
La valeur de un_chiffre est égale à 2 donc si l'on suit la procédure :
- Si un_chiffre = 0 ? non c'est faux !
- Alors si un_chiffre = 1 ? non c'est faux !
- Alors si un_chiffre n'est aucune de ces conditions ! evidement il ne reste plus que la dernière solution
Remarque de logique
Le else (sinon) ne requiert pas une condition puisque, evidement, c'est la dernière solution possible quand toutes les autres sont éronnées !
Donc, JAMAIS de condition après un else !!
Une dernière remarque
vous pouvez mettre autant de else if que vous le souhaitez !
Ce n'est pas parce que j'en ai mis qu'un seul que l'on ne peut en mettre qu'un !
if() |
[modifier] CodeSnippets : Message qui souhaite la bienvenue+l'heure
A placer dans public OnPlayerConnect(playerid)
new nom_joueur[256]; new message_bienvenue[256]; new minute, heure; gettime (heure, minute); GetPlayerName(playerid,nom_joueur,256); format(message_bienvenue,256,"Bienvenue %s, sur notre serveur ! Il est %02d:%02d ...",nom_joueur,heure,minute); SendClientMessage(playerid,VOTRE_COULEUR,message_bienvenue);
[modifier] CodeSnippets : Récupèrer le plus grand score d'un match
A placer tout en haut du script :
#define VERT 0x00FF80FF new id_inspectee = 0, score_inspecte = 0; new id_sauvee = 0, score_sauve = 0; new gagnant[256];
A placer lorsque que vous voulez cloturer le match
for(id_inspectee = 0; id_inspectee < 200; id_inspectee++) { if (IsPlayerConnected (id_inspectee)) { score_inspecte = GetPlayerScore(id_inspectee); if(score_inspecte > score_sauve) { id_sauvee = id_inspectee; score_sauve = score_inspecte; } } } new nom[256]; GetPlayerName(id_sauvee, nom, 256); format(gagnant, 256,"%s a gagné ce test avec succès! :D et remporte 1234$", nom); SendClientMessageToAll(VERT, gagnant); GivePlayerMoney(id_sauvee, 1234);
Explications du script :
#define VERT 0x00FF80FF //VERT contient l'hexadecimale 0x00FF80FF new id_inspectee = 0, score_inspecte = 0; //déclaration variable id_inspectee et score_inspecte sont égale à 0 new id_sauvee = 0, score_sauve = 0; //idem new gagnant[256]; //déclaration variable contiendra le message (format) for(id_inspectee = 0; id_inspectee < 200; id_inspectee++) //tant que id_inspectee < 200, ajoutée +1 { if (IsPlayerConnected (id_inspectee)) //si le joueur est connecté { score_inspecte = GetPlayerScore(id_inspectee); //score_inspecte est égale au score de l'id_inspectee if(score_inspecte > score_sauve) // Si le score_inspecte est plus grand que le score sauvé précédement { id_sauvee = id_inspectee; //alors id_sauvee est égale id_inspectee score_sauve = score_inspecte; //et score_sauve est égale score_inspecte } } } new nom[256]; //déclaration de nom GetPlayerName(id_sauvee, nom, 256); //Recupère le nom du joueur et la mettons dans nom format(gagnant, 256,"%s a gagné ce test avec succès! :D et remporte 1234$", nom);// format du futur message SendClientMessageToAll(VERT, gagnant); //Envoi du message à tout le monde GivePlayerMoney(id_sauvee, 1234); //donne 1234$ au joueur gagnant (dont son id à été sauvée)