SA-MP Forums Archive
[Ayuda] Mensaje para el Jugador Advertido. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [Ayuda] Mensaje para el Jugador Advertido. (/showthread.php?tid=315643)



[Ayuda] Mensaje para el Jugador Advertido. - Karim_Loyola - 03.02.2012

Buenas, tengo un sistema de "/advertir" para mi server RolePlay, pero quiero que aparte de que diga: "El Jugador . ha sido advertiro (1/3)"

Le mande un mensaje al jugador que diga:

Fuiste advertido por el admin: . Razуn: . (1/3)

Les dejo el pawno, porque he intentado ponerlo con SendClientMessage pero me manda unos errores:

pawn Код:
if (strcmp(cmd, "/advertir", true) == 0)
    {
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            new tmp1[256], tmp2[256], jugador, admin, string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
            tmp1 = strtok(cmdtext, idx);
            tmp2 = strtok(cmdtext, idx);
            if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, COLOR_GRAD2, "[INFO]: /advertir [ID] [Razon].");
            jugador = strval(tmp1);
            admin = playerid;
            if (strval(tmp1) == admin) return SendClientMessage(playerid, COLOR_ROJO, "No puedes advertirte a ti mismo.");
            GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
            GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
            if (IsPlayerConnected(jugador))
            {
                if (Advertido[jugador] == 0)
                {
                    Advertido[jugador] = 1;
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (1/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                }
                else if (Advertido[jugador] == 1)
                {
                    Advertido[jugador] = 2;
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (2/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                }
                else if (Advertido[jugador] == 2)
                {
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (3/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    Kick(jugador);
                }
            }
            else return SendClientMessage(playerid, COLOR_ROJO, "El jugador no se encuentra conectado.");
        }
        else return SendClientMessage(playerid, COLOR_ROJO, "Necesitas ser administrador nivel 1 para usar este comando.");
        return 1;
    }
Gracias!

PD: si se pudieran pasar por este post tambiйn: https://sampforum.blast.hk/showthread.php?tid=315575
para los que sepan como arreglar Guardados de Tuning, ya que tengo un problema gravнsimo que no se me guardan, pruebo con cualquier FS, bueno ahн dice todo.


GRACIAS!


Respuesta: [Ayuda] Mensaje para el Jugador Advertido. - godoy32 - 04.02.2012

pawn Код:
if (strcmp(cmd, "/advertir", true) == 0)
        {
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                new tmp1[256], tmp2[256], jugador, admin, string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
                tmp1 = strtok(cmdtext, idx);
                tmp2 = strtok(cmdtext, idx);
                if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, COLOR_GRAD2, "[INFO]: /advertir [ID] [Razon].");
                jugador = strval(tmp1);
                admin = playerid;
                if (strval(tmp1) == admin) return SendClientMessage(playerid, COLOR_ROJO, "No puedes advertirte a ti mismo.");
                GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
                GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
                if (IsPlayerConnected(jugador))
                {
                    if (Advertido[jugador] == 0)
                    {
                        Advertido[jugador] = 1;
                        format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (1/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessageToAll(COLOR_ROJO, string3);
                        format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (1/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessage(jugador,string3);
                        PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                        PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    }
                    else if (Advertido[jugador] == 1)
                    {
                        Advertido[jugador] = 2;
                        format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (2/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessageToAll(COLOR_ROJO, string3);
                        format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (2/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessage(jugador,string3);
                        PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                        PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    }
                    else if (Advertido[jugador] == 2)
                    {
                        format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (3/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessageToAll(COLOR_ROJO, string3);
                        format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (3/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessage(jugador,string3);
                        PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                        PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                        Kick(jugador);
                    }
                }
                else return SendClientMessage(playerid, COLOR_ROJO, "El jugador no se encuentra conectado.");
            }
            else return SendClientMessage(playerid, COLOR_ROJO, "Necesitas ser administrador nivel 1 para usar este comando.");
            return 1;
        }
Creo que eso es lo que quieres.


Respuesta: [Ayuda] Mensaje para el Jugador Advertido. - Karim_Loyola - 04.02.2012

Me tira estos errores:

Код:
C:\Users\Karim\Desktop\Gamemode\gamemodes\RealSecondLife.pwn(28805) : error 035: argument type mismatch (argument 2)
C:\Users\Karim\Desktop\Gamemode\gamemodes\RealSecondLife.pwn(28815) : error 035: argument type mismatch (argument 2)
C:\Users\Karim\Desktop\Gamemode\gamemodes\RealSecondLife.pwn(28824) : error 035: argument type mismatch (argument 2)
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


3 Errors.
Es por los

pawn Код:
SendClientMessage(jugador,string3);
La otra ves cuando intentй hacerlo, me tirу esos errores igual, їquй serб?


Re: [Ayuda] Mensaje para el Jugador Advertido. - digman - 04.02.2012

Proba Este:

pawn Код:
if (strcmp(cmd, "/advertir", true) == 0)
    {
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            new tmp1[256], tmp2[256], jugador, admin, string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
            tmp1 = strtok(cmdtext, idx);
            tmp2 = strtok(cmdtext, idx);
            if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, COLOR_GRAD2, "[INFO]: /advertir [ID] [Razon].");
            jugador = strval(tmp1);
            admin = playerid;
            if (strval(tmp1) == admin) return SendClientMessage(playerid, COLOR_ROJO, "No puedes advertirte a ti mismo.");
            GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
            GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
            Advertido[jugador] += 1;
            if (IsPlayerConnected(jugador))
            {
                if (Advertido[jugador] == 0)
                {
                    Advertido[jugador] = 1;
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (1/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                }
                else if (Advertido[jugador] == 1)
                {
                    Advertido[jugador] = 2;
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (2/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                }
                else if (Advertido[jugador] == 2)
                {
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (3/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    Kick(jugador);
                }
            }
            else return SendClientMessage(playerid, COLOR_ROJO, "El jugador no se encuentra conectado.");
        }
        else return SendClientMessage(playerid, COLOR_ROJO, "Necesitas ser administrador nivel 1 para usar este comando.");
        return 1;
    }
Avisame si te funca.


Respuesta: [Ayuda] Mensaje para el Jugador Advertido. - Karim_Loyola - 04.02.2012

Es el mismo que dн, y darб mensaje en general pero no al usuario, lo que quiero es que de General (Ha sido advertido) y para el usuario advertido (Has sido advertido).


Respuesta: [Ayuda] Mensaje para el Jugador Advertido. - godoy32 - 04.02.2012

Ahora si
pawn Код:
if (strcmp(cmd, "/advertir", true) == 0)
        {
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                new tmp1[256], tmp2[256], jugador, admin, string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
                tmp1 = strtok(cmdtext, idx);
                tmp2 = strtok(cmdtext, idx);
                if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, COLOR_GRAD2, "[INFO]: /advertir [ID] [Razon].");
                jugador = strval(tmp1);
                admin = playerid;
                if (strval(tmp1) == admin) return SendClientMessage(playerid, COLOR_ROJO, "No puedes advertirte a ti mismo.");
                GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
                GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
                if (IsPlayerConnected(jugador))
                {
                    if (Advertido[jugador] == 0)
                    {
                        Advertido[jugador] = 1;
                        format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (1/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessageToAll(COLOR_ROJO, string3);
                        format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (1/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessage(jugador,-1,string3);
                        PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                        PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    }
                    else if (Advertido[jugador] == 1)
                    {
                        Advertido[jugador] = 2;
                        format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (2/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessageToAll(COLOR_ROJO, string3);
                        format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (2/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessage(jugador,-1,string3);
                        PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                        PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    }
                    else if (Advertido[jugador] == 2)
                    {
                        format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (3/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessageToAll(COLOR_ROJO, string3);
                        format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (3/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                        SendClientMessage(jugador,-1,string3);
                        PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                        PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                        Kick(jugador);
                    }
                }
                else return SendClientMessage(playerid, COLOR_ROJO, "El jugador no se encuentra conectado.");
            }
            else return SendClientMessage(playerid, COLOR_ROJO, "Necesitas ser administrador nivel 1 para usar este comando.");
            return 1;
        }



Re: [Ayuda] Mensaje para el Jugador Advertido. - digman - 04.02.2012

Ah Perdon no habia leido bien aca te lo termine:

pawn Код:
if (strcmp(cmd, "/advertir", true) == 0)
    {
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            new tmp1[256], tmp2[256], jugador, admin, string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
            tmp1 = strtok(cmdtext, idx);
            tmp2 = strtok(cmdtext, idx);
            if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, COLOR_GRAD2, "[INFO]: /advertir [ID] [Razon].");
            jugador = strval(tmp1);
            admin = playerid;
            if (strval(tmp1) == admin) return SendClientMessage(playerid, COLOR_ROJO, "No puedes advertirte a ti mismo.");
            GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
            GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
            Advertido[jugador] += 1;
            if (IsPlayerConnected(jugador))
            {
                if (Advertido[jugador] == 0)
                {
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (1/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (1/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessage(jugador,-1,string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                }
                else if (Advertido[jugador] == 1)
                {
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (2/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (2/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessage(jugador,-1,string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                }
                else if (Advertido[jugador] == 2)
                {
                    format(string3, sizeof(string3), "Administracion: %s ha sido advertido por %s. (Razon: %s.) (3/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessageToAll(COLOR_ROJO, string3);
                    format(string3,sizeof(string),"Fuiste advertido por el admin: %s Razуn: %s (3/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
                    SendClientMessage(jugador,-1,string3);
                    PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
                    PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
                    Kick(jugador);
                }
            }
            else return SendClientMessage(playerid, COLOR_ROJO, "El jugador no se encuentra conectado.");
        }
        else return SendClientMessage(playerid, COLOR_ROJO, "Necesitas ser administrador nivel 1 para usar este comando.");
        return 1;
    }



Respuesta: [Ayuda] Mensaje para el Jugador Advertido. - Karim_Loyola - 04.02.2012

ЎGracias! a los 2, si se pudieran pasar por mi post que me tiene preocupado y desesperado: https://sampforum.blast.hk/showthread.php?tid=315575

se los agradecerнa mucho.


Gracias!