01.08.2015, 16:25
No es obligatorio, pero sн recomendable, mira este ejemplo:
Como la primera condiciуn se cumple (ya que var contiene "texto"), le mandamos un mensaje al jugador y devolvemos un valor (return 1) para indicar que se ha cumplido nuestra condiciуn.
En nuestra consola observaremos esto debido al print:
Viendo lo anterior concluimos que si no se han imprimido el resto de los valores es que el cуdigo que sigue la condiciуn no se ha ejecutado.
Volvamos a ejecutar el mismo cуdigo sin "return 1":
La primera condiciуn se cumplirб y se le mandarб un mensaje al jugador igual que en el primer caso, pero observaremos en la consola lo siguiente:
їQuй vemos? Que se ha ejecutado todo el cуdigo, aunque las otras condiciones con strcmp no se han cumplido porque el texto es distinto.
En definitiva, si nuestro cуdigo se ejecuta es recomendable devolver un valor y decir "basta, ya tengo lo que querнa". De esta manera el cуdigo que sigue no se ejecuta, y conseguimos algo llamado "optimizaciуn".
El valor del return depende de dуnde nos encontremos, en el caso de los comandos devolver "1" significa que el comando se ha procesado correctamente.
En lugar de poner "return 1" puedes hacer lo siguiente:
SendClientMessage puede devolver dos posibles valores (1 si se ha ejecutado correctamente, 0 si el jugador no estб conectado), entonces, es como poner "return 1" pero a la vez mandamos el mensaje (que a su vez devuelve 1).
PHP код:
new var[6];
var = "texto";
print("0");
if(!strcmp(var, "texto", true))
{
SendClientMessage(playerid, -1, "Coinciden");
return 1;
}
print("1");
if(!strcmp(var, "opcion1", true))
{
SendClientMessage(playerid, -1, "Coinciden");
return 1;
}
print("2");
if(!strcmp(var, "opcion2", true))
{
SendClientMessage(playerid, -1, "Coinciden");
return 1;
}
print("3");
En nuestra consola observaremos esto debido al print:
pawn Код:
Volvamos a ejecutar el mismo cуdigo sin "return 1":
PHP код:
new var[6];
var = "texto";
print("0");
if(!strcmp(var, "texto", true))
{
SendClientMessage(playerid, -1, "Coinciden");
}
print("1");
if(!strcmp(var, "opcion1", true))
{
SendClientMessage(playerid, -1, "Coinciden");
}
print("2");
if(!strcmp(var, "opcion2", true))
{
SendClientMessage(playerid, -1, "Coinciden");
}
print("3");
pawn Код:
0
1
2
3
En definitiva, si nuestro cуdigo se ejecuta es recomendable devolver un valor y decir "basta, ya tengo lo que querнa". De esta manera el cуdigo que sigue no se ejecuta, y conseguimos algo llamado "optimizaciуn".
El valor del return depende de dуnde nos encontremos, en el caso de los comandos devolver "1" significa que el comando se ha procesado correctamente.
En lugar de poner "return 1" puedes hacer lo siguiente:
PHP код:
new var[6];
var = "texto";
if(!strcmp(var, "texto", true)) return SendClientMessage(playerid, -1, "Coinciden");
if(!strcmp(var, "opcion1", true)) return SendClientMessage(playerid, -1, "Coinciden");
if(!strcmp(var, "opcion2", true)) return SendClientMessage(playerid, -1, "Coinciden");