Duda funciуn de nombres y duda de las casas
#1

Buenas, existe alguna funciуn para colocar en el OnPlayerConnect sobre de que el usuario siempre debe llevar el formato Nombre_Apellido con las iniciales en mayъscula y siempre sea letras? Eso existirб o solo existe la funciуn del "_"?


Sobre las casas no entiendo como hacer una funciуn para saber si el jugador tiene una ID de una casa comprar para colocar la condiciуn en el comando, osea verificar primero si tiene un ID de alguna casa
Reply
#2

Lo de la ID de casa puedes saber si tiene una casa si el valor de la variable "Casa" o como sea en su cuenta es distinto de 0 (o como lo tengas por defecto).

El nombre puedes hacer que se vea mayъscula con Toupper

Saludos.
Reply
#3

Quote:
Originally Posted by Goncho28
Посмотреть сообщение
Lo de la ID de casa puedes saber si tiene una casa si el valor de la variable "Casa" o como sea en su cuenta es distinto de 0 (o como lo tengas por defecto).

El nombre puedes hacer que se vea mayъscula con Toupper

Saludos.
Pero el problema es que no se que cуdigo es para que identifique si tiene un ID o esta en 0
Reply
#4

Quote:
Originally Posted by wharlos
Посмотреть сообщение
Pero el problema es que no se que cуdigo es para que identifique si tiene un ID o esta en 0
if(variable == 0){
// Si la variable vale 0
}
Reply
#5

Quote:
Originally Posted by Goncho28
Посмотреть сообщение
if(variable == 0){
// Si la variable vale 0
}
Gracias me funciono, +1 rep
Reply
#6

pawn Код:
public OnPlayerConnect(playerid)
{
    new NombreP[MAX_PLAYER_NAME];
    GetPlayerName(playerid, NombreP, sizeof(NombreP));
    if(!NameCheck(NombreP))
    {
        SendClientMessage(playerid, -1, "Tu nombre debe contener el formato: Nombre_Apellido.");
        SetTimerEx("Expulsar", 500, 0, "i", playerid);
        return 1;
    }
    return 1;
}
forward Expulsar(playerid);
public Expulsar(playerid)
{
    if(IsPlayerConnected(playerid)) Kick(playerid);
}
stock NameCheck(const source[]) // Hecho por Konstantinos.
{
    new length = strlen(source);
    if (!(3 <= length <= 20)) return 0;
    new pos = strfind(source, "_");
    if (pos == -1) return 0;
    new    us_count;
    for (new i; i != length; ++i)
    {
        switch (source[i])
        {
            case '_': ++us_count;
        }
        if (!i || i == pos + 1)
        {
            switch (source[i])
            {
                case 'A' .. 'Z': continue;
                default: return 0;
            }
        }
        else if (i && i != pos && i != pos + 1)
        {
            switch (source[i])
            {
                case 'a' .. 'z': continue;
                default: return 0;
            }
        }
    }
    return (us_count == 1 && source[length - 1] != '_');
}
Reply
#7

Quote:
Originally Posted by DeLiC
Посмотреть сообщение
pawn Код:
public OnPlayerConnect(playerid)
{
    new NombreP[MAX_PLAYER_NAME];
    GetPlayerName(playerid, NombreP, sizeof(NombreP));
    if(!NameCheck(NombreP))
    {
        SendClientMessage(playerid, -1, "Tu nombre debe contener el formato: Nombre_Apellido.");
        SetTimerEx("Expulsar", 500, 0, "i", playerid);
        return 1;
    }
    return 1;
}
forward Expulsar(playerid);
public Expulsar(playerid)
{
    if(IsPlayerConnected(playerid)) Kick(playerid);
}
stock NameCheck(const source[]) // Hecho por Konstantinos.
{
    new length = strlen(source);
    if (!(3 <= length <= 20)) return 0;
    new pos = strfind(source, "_");
    if (pos == -1) return 0;
    new    us_count;
    for (new i; i != length; ++i)
    {
        switch (source[i])
        {
            case '_': ++us_count;
        }
        if (!i || i == pos + 1)
        {
            switch (source[i])
            {
                case 'A' .. 'Z': continue;
                default: return 0;
            }
        }
        else if (i && i != pos && i != pos + 1)
        {
            switch (source[i])
            {
                case 'a' .. 'z': continue;
                default: return 0;
            }
        }
    }
    return (us_count == 1 && source[length - 1] != '_');
}
Esa funciуn es para que siempre le obligue a usar sus iniciales en mayъscula? asн Juan_Acevedo, se ve claramente que es pero si es la que necesito?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)