• 05 Juin 2026, 17:19:22


Auteur Sujet: Tuto Retunr  (Lu 1435 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Tuto Retunr
« le: 28 Octobre 2009, 13:08:02 »
Bonjour, je cherche une personne gentille qui pourrait m'expliquer quand on met un return et quand on en met pas. Et ou les mettre. Merci d'avance
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne BuBuNo

  • Radio Guingamp - Bien plus qu'une radio !
  • *
  • Grand Banditisme
  • La radio bien plus qu'une passion !
  • Messages: 840
    • Voir le profil
    • Radio Guingamp - Bien plus qu'une radio !
Re : Tuto Retunr
« Réponse #1 le: 28 Octobre 2009, 13:52:52 »
Bas si tu utilise les fonction if comme les commande :
if (strcmp("/moto", cmdtext, true) == 0)
{
if(BuildAdmin == 1 && IsNotAdmin(playerid)) return 1;
new Float:x,Float:y,Float:z;
new batox;
GetPlayerPos(playerid, x, y, z);
batox = CreateVehicle(522, x, y, z, 0, 130, 145,0);
PutPlayerInVehicle(playerid, batox, 0);
   return 1;
}
Le return 1;
   }
Veut dire que la commande s'arete là

Apres si tu regarde la :
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
Tu voit que tu as un return 0;
}
cela veut dire que le public OnPlayerCommandText ce termine ici

En gros return veut dire fin
ıllıllı вυвυησ ıllıllı


Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Re : Tuto Retunr
« Réponse #2 le: 28 Octobre 2009, 14:55:36 »
et avec les else?
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Re : Tuto Retunr
« Réponse #3 le: 28 Octobre 2009, 15:08:56 »
Bas si tu utilise les fonction if comme les commande :
if (strcmp("/moto", cmdtext, true) == 0)
{
if(BuildAdmin == 1 && IsNotAdmin(playerid)) return 1;
new Float:x,Float:y,Float:z;
new batox;
GetPlayerPos(playerid, x, y, z);
batox = CreateVehicle(522, x, y, z, 0, 130, 145,0);
PutPlayerInVehicle(playerid, batox, 0);
   return 1;
}
Le return 1;
   }
Veut dire que la commande s'arete là

Apres si tu regarde la :
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
Tu voit que tu as un return 0;
}
cela veut dire que le public OnPlayerCommandText ce termine ici

En gros return veut dire fin


Return ne veut en aucun cas dire que c' est la fin, mais que tout simplement ca retourne une valeur

Si tu veut l' exemple de la callback des commandes


le return 1;
veut dire que la commande c' est bien executer

le return 0; veut dire qu' il n' as pas trouver la commande tapez par un joueur !


le return sert aussi dans les fonction


par exemple dans

GetPlayerInterior(playerid);

C' est une fonction coder du coter serveur client

qui est dans ce genre


int GetPlayerInterior(playerid)
{
// ici tout le code
return Interior;
}


ca retourne donc la valeur de Interior

que je peut stocker dans une variable en fesant
new int = GetPlayerInterior(playerid);
a la fin la variable int stockera la valeur de la variable Interior



Je sais pas si je me suis bien exprimer ou si tu a bien compris mais voila comment ca fonctionne


Sinon d' un coter master-bru tu a raison ca sert aussi a dire que c' est la fin du code lol =p

PS: On est pas obliger de mettre des return =) sauf si le compilo nous sort une erreur qui nous dit de le mettre
dans le cas moi je met un return 0; lol



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne BuBuNo

  • Radio Guingamp - Bien plus qu'une radio !
  • *
  • Grand Banditisme
  • La radio bien plus qu'une passion !
  • Messages: 840
    • Voir le profil
    • Radio Guingamp - Bien plus qu'une radio !
Re : Tuto Retunr
« Réponse #4 le: 28 Octobre 2009, 15:32:27 »
oups sorry :(

Heu pour les else je croit savoir mais bon on vas encore me dire que ces pas bon xD
sa veut dire si il n'est pas ....

Bon apres je preferre que sa soit cristab qui te le dise
ıllıllı вυвυησ ıllıllı


Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Re : Tuto Retunr
« Réponse #5 le: 28 Octobre 2009, 15:49:48 »
Merci
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Tuto Retunr
« Réponse #6 le: 28 Octobre 2009, 16:47:08 »
If

veut tout simplement exprimer une condition

par exemple


if(IsPlayerAdmin(playerid))

la ca dit Si le joueur est admin


et else

fait Sinon

PS: pour que la condition soit vrai on a besoin soit d' un Boolean soit d' une valeur en chiffre lol


donc si

on fait if(false)

ca executera pas le code qui est dans la contion

si on fait

if(true)
ca l executera

si on fait 

if( 0 )
ca equivaut a if(false)

Si on fait if( 1 ) ( pas obliger de mettre  1 il faut juste mettre une valeur positive non nul)

ca equivaut a true
« Modifié: 28 Octobre 2009, 16:49:20 par sasuke78200 »



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Tuto Retunr
« Réponse #7 le: 28 Octobre 2009, 16:51:10 »
Salut,

attention, la signification de la valeur d'un return est celle déterminée par le codeur,

TOUTE FONCTION DEVRAIT NORMALEMENT RETOURNÉE UNE VALEUR

nb. retourner une valeur est la dernière chose faite par une fonction, ce qui signifie que si des lignes de codes sont placés après le return, elles ne seront pas exécutées (en suivant l'ordre d'exécution)

un petit exemple:

fonction(paramètre)
{
    if(paramètre == 1)
    {
        return 0;//on retourne une valeur, la fonction arrete ici (0 signifie généralement une erreur)
        OnPlayerCommandText(12, "/me se tort de rire");//ne sera jamais appeler (le compilo te donne un avertissement)
    }
    printf("salut, la paramètre de la fonction est %d", paramètre);//sera appelé dans le cas où le paramètre n'égale pas 1
    return 1;
}

NB. la plupart des fonctions de sa-mp retournent 0 si une erreur se produit et 1 si l'exécution est réussi

++Sim++





Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Tuto Retunr
« Réponse #8 le: 28 Octobre 2009, 16:54:26 »
TOUTE FONCTION DEVRAIT NORMALEMENT RETOURNÉE UNE VALEUR

faux ! ( lol ca me fait bizarre de dire ca a sim )


En C++ si on defini une fonction comme cela


void fonction(para);

on ne doit pas retourner de valeur !

de plus quand tu creer une fonction et que tu ne met aucun return le compilo ne te sort aucun warn ni erreur
ce n' est donc pas imperative



PS: pardonne moi sim !!  :bangin



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
Re : Tuto Retunr
« Réponse #9 le: 28 Octobre 2009, 18:30:55 »
+1, en C++, si tu mets un return dans un void t'as une belle erreur ^^
Sinon, pour SA-MP tu peux bien faire une fonction qui ne retourne rien, genre la simple et bête fonction qui fait un SendClientMessage x)

++
R@f

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Tuto Retunr
« Réponse #10 le: 28 Octobre 2009, 20:13:13 »
Salut,

en fait je parlais du pawn....

même la fonction SendClientMessage devrait retourner une valeur (celle intégrée dans SA-MP le fait), ca permet de pouvoir tester en tout temps si la fonction a été exécutée correctement

++Sim++