14.06.2010, 20:48
[Tutorial] Creando restricciones if
їQuй son las restricciones if?
Las restricciones if son para limitar una o mбs funciones, es decir, para que puedan suceder tiene que pasar algo. Por ejemplo:
Lo que ocurre en el ejemplo es esto: El parametro if limita la funciуn SendClientMessage sуlo si el jugador estб conectado.
Tipos de restricciones dentro del if
Hay varios tipos de restricciones dentro del if, los pondrй a continuaciуn:
1. Comparar Numeros: Puedes comparar si un nъmero es mayor, menor, igual, etc:
1.1:
1.2:
1.3:
1.4:
1.5:
1.6:
">"
"=>"
"<"
"<="
"=="
"!="
Compara si el nъmero es mayor a otro.
Compara si el nъmero es mayor o igual a otro.
Compara si el nъmero es menor a otro.
Compara si el nъmero es menor o igual a otro.
Compara si el nъmero es igual a otro.
Compara si el nъmero no es igual a otro.
2. Comparar Textos: Puedes comparar si un texto es igual a otro, sus caracteres, etc:
2.1:
2.2:
2.3:
strcmp(texto1, texto2, false)
strlen(texto) *Funciуn numйrica* Nъmero
strval(texto) *Funciуn numйrica* Nъmero
Compara si el texto1 es igual al texto2, si lo son retornarб 1, si no lo son retornarб 0.
Compara si la cantidad de caracteres del texto es mayor, igual, menor, etc que el nъmero.
Compara si el valor del nъmero es mayor, igual, menor, etc que el nъmero.
3. Varias restricciones a la vez:
Usando "&&" se pueden poner varias restricciones dentro de un if, el "&&" representarнa la palabra "y", por ejemplo:
Ahн se estбn usando 2 restricciones dentro de un mismo if, de esta forma podemos reducir el tamaсo de nuestro script.
4. Varias restricciones no concecutivas, es decir, si no es una es la otra, el "||" serнa la palabra "у" (un poco confuso):
Usando "||" se pueden poner varias restricciones en un mismo if que no se procesarбn todas juntas:
Ahн se estan usando 2 restricciones que si no es una serб la otra, de esta forma evitamos usar mбs restricciones if, reduciendo nuestro script. Si no usбramos "||" podrнamos hacer esto:
Ejemplos
Cadena de restricciones variadas para poder dar dinero al jugador:
Verificar si el jugador estб en un бrea:
Verificar si el jugador esta aprentado la tecla correr o la tecla saltar:
Bueno este es el final del tutorial, espero que les sea ъtil y les guste
їQuй son las restricciones if?
Las restricciones if son para limitar una o mбs funciones, es decir, para que puedan suceder tiene que pasar algo. Por ejemplo:
pawn Код:
if(IsPlayerConnected(playerid))
{
SendClientMessage(playerid, 0xFFFFFFFF, "Estбs conectado");
}
Tipos de restricciones dentro del if
Hay varios tipos de restricciones dentro del if, los pondrй a continuaciуn:
1. Comparar Numeros: Puedes comparar si un nъmero es mayor, menor, igual, etc:
1.1:
1.2:
1.3:
1.4:
1.5:
1.6:
">"
"=>"
"<"
"<="
"=="
"!="
Compara si el nъmero es mayor a otro.
Compara si el nъmero es mayor o igual a otro.
Compara si el nъmero es menor a otro.
Compara si el nъmero es menor o igual a otro.
Compara si el nъmero es igual a otro.
Compara si el nъmero no es igual a otro.
2. Comparar Textos: Puedes comparar si un texto es igual a otro, sus caracteres, etc:
2.1:
2.2:
2.3:
strcmp(texto1, texto2, false)
strlen(texto) *Funciуn numйrica* Nъmero
strval(texto) *Funciуn numйrica* Nъmero
Compara si el texto1 es igual al texto2, si lo son retornarб 1, si no lo son retornarб 0.
Compara si la cantidad de caracteres del texto es mayor, igual, menor, etc que el nъmero.
Compara si el valor del nъmero es mayor, igual, menor, etc que el nъmero.
3. Varias restricciones a la vez:
Usando "&&" se pueden poner varias restricciones dentro de un if, el "&&" representarнa la palabra "y", por ejemplo:
pawn Код:
if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, 0xFFFFFFFF, "Estбs conectado y estбs en un vehнculo");
}
4. Varias restricciones no concecutivas, es decir, si no es una es la otra, el "||" serнa la palabra "у" (un poco confuso):
Usando "||" se pueden poner varias restricciones en un mismo if que no se procesarбn todas juntas:
pawn Код:
if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN || GetPlayerWeapon(playerid) == WEAPON_ROCKETLAUNCHER)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Tenйs un arma prohibida");
Kick(playerid);
}
pawn Код:
if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Tenйs un arma prohibida");
Kick(playerid);
}
if(GetPlayerWeapon(playerid) == WEAPON_ROCKETLAUNCHER)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Tenйs un arma prohibida");
Kick(playerid);
}
Ejemplos
Cadena de restricciones variadas para poder dar dinero al jugador:
pawn Код:
new Hora, Minuto, Segundo;
gettime(Hora, Minuto, Segundo);
// Si el jugador estб conectado y la hora es desde las 18 hasta las 20
if(IsPlayerConnected(playerid) && Hora >= 18 && Hora <= 20)
{ // tambien se podria poner GetPlayerMoney dentro de la cadena anterior, pero preferн ponerlo luego para separar un poco los terminos. Esto es opcional
if(GetPlayerMoney(playerid) <= 5000)
{
GivePlayerMoney(playerid, 100);
}
}
Verificar si el jugador estб en un бrea:
pawn Код:
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
if(X >= 1000.0 && X <= 2000.0 && Y > 1000.0 && Y < 2000.0)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Estбs dentro del бrea de combate!");
}
Verificar si el jugador esta aprentado la tecla correr o la tecla saltar:
pawn Код:
new Keys, ud, lr;
GetPlayerKeys(playerid, Keys, ud, lr);
if(Keys == KEY_SPRINT || Keys == KEY_JUMP)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Estбs precionando las teclas correctas");
}
Bueno este es el final del tutorial, espero que les sea ъtil y les guste