Muted no mutea D: [Ayuda]
#1

Hola amigos de samp, si alguien fuera tan amable de revisar mi funciуn de mute.. ya que no mutea cuando realizo la acciуn /mute

PHP код:
if(PlayerInfo[playerid][Muted] == 1)
    {
         
PlayerInfo[playerid][MuteWarnings]++;
         new 
string[128];
        if(
PlayerInfo[playerid][MuteWarnings] < ServerInfo[MaxMuteWarnings]) {
            
format(stringsizeof(string),"CUIDADO: Estбs muteado, si continuas hablando serбs kickeado. (%d / %d)"PlayerInfo[playerid][MuteWarnings], ServerInfo[MaxMuteWarnings] );
            
SendClientMessage(playerid,red,string);
        } else {
            
SendClientMessage(playerid,red,"Has sido advertido ! Ahora has sido kickeado");
            
format(stringsizeof(string),"***%s [%d] ha sido Kickeado por exceder las muteadas"PlayerName2(playerid), playerid);
            
SendClientMessageToAll(red,string);
            
SaveToFile("KickLog",string); Kick(playerid);
        } return 
0;
    } 
PHP код:
dcmd_mute(playerid,params[]) {
    if(
PlayerInfo[playerid][LoggedIn] == 1) {
        if(
PlayerInfo[playerid][Level] >= 2) {
            new 
tmp[256], tmp2[256], Index;        tmp strtok(params,Index), tmp2 strtok(params,Index);
            if(!
strlen(params)) return SendClientMessage(playeridred"[USA]: /mute [playerid] [razуn]") &&
            
SendClientMessage(playeridorange"[Funciуn]: Muteas del Chat a Especificado Jugador!");
            new 
player1playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
            
player1 strval(tmp);
             if(
IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && (PlayerInfo[player1][Level] != ServerInfo[MaxAdminLevel]) ) {
                 if(
PlayerInfo[player1][Muted] == 0) {
                    
GetPlayerName(player1playernamesizeof(playername));     GetPlayerName(playeridadminnamesizeof(adminname));
                    
CMDMessageToAdmins(playerid,"MUTE");
                    
PlayerPlaySound(player1,1057,0.0,0.0,0.0);  PlayerInfo[player1][Muted] = 1PlayerInfo[player1][MuteWarnings] = 0;
                    if(
strlen(tmp2)) {
                        
format(string,sizeof(string),"El Administrador %s ha muteado a %s [Razуn: %s]",adminname,playername,params[2]);
                         return 
SendClientMessageToAll(red,string);
                    } else {
                        
format(string,sizeof(string),"El Administrador %s ha muteado a %s",adminname,playername);
                         return 
SendClientMessageToAll(red,string); }
                } else return 
SendClientMessage(playeridred"El player ya estб muteado");
            } else return 
SendClientMessage(playeridred"El player no estб conectado o No tienes el nivel para usar este comando");
        } else return 
SendClientMessage(playerid,red,"{ff0000}[ERROR]:{ffffff} No tienes el nivel para usar este comando.");
    } else return 
SendClientMessage(playerid,red,"{ff0000}[ERROR]:{ffffff} Logueate para usar este comando");
}
dcmd_unmute(playerid,params[]) {
    if(
PlayerInfo[playerid][LoggedIn] == 1) {
        if(
PlayerInfo[playerid][Level] >= 2) {
            if(!
strlen(params)) return SendClientMessage(playeridred"[USA]: /unmute [playerid]") &&
            
SendClientMessage(playeridorange"[Funciуn]: Desmuteas del Chat a Especificado Jugador!");
            new 
player1playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
            
player1 strval(params);
             if(
IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && (PlayerInfo[player1][Level] != ServerInfo[MaxAdminLevel]) ) {
                 if(
PlayerInfo[player1][Muted] == 1) {
                    
GetPlayerName(player1playernamesizeof(playername));     GetPlayerName(playeridadminnamesizeof(adminname));
                    
CMDMessageToAdmins(playerid,"UNMUTE");
                    
PlayerPlaySound(player1,1057,0.0,0.0,0.0);  PlayerInfo[player1][Muted] = 0PlayerInfo[player1][MuteWarnings] = 0;
                    
format(string,sizeof(string),"El Administrador %s ha dejado hablar a %s",adminname,playername);
                    return 
SendClientMessageToAll(red,string);
                } else return 
SendClientMessage(playeridred"El Player no estб muteado");
            } else return 
SendClientMessage(playeridred"El player no estб conectado");
        } else return 
SendClientMessage(playerid,red,"{ff0000}[ERROR]:{ffffff} No tienes el nivel para usar este comando.");
    } else return 
SendClientMessage(playerid,red,"{ff0000}[ERROR]:{ffffff} Logueate para usar este comando");

muchas gracias saludos
Reply
#2

Que quilombo de cуdigos.

Fijate de colocar esto debajo de la llave abierta de OnPlayerText.

pawn Код:
public OnPlayerText(playerid)
{//Debajo de esta llave.

if(PlayerInfo[playerid][Mute] == 1) return SendClientMessage(playerid,-1,"Estбs muteado, no puedes escribir nada aъn");
EDITO: Haces lo mismo con los canales de mensajerнa. /b /mp , etcйtera.
Reply
#3

Prueba asн:

pawn Код:
public OnPlayerText(playerid, text[])
{
    if(PlayerInfo[playerid][Muted] == 1)  // Si estб muteado
    {
        PlayerInfo[playerid][MuteWarnings]++; // Incrementa las advertencias
        new string[128];
        if(PlayerInfo[playerid][MuteWarnings] < ServerInfo[MaxMuteWarnings]) { // Si todavнa no llego al lнmite de advertencias
            format(string, sizeof(string),"CUIDADO: Estбs muteado, si continuas hablando serбs kickeado. (%d / %d)", PlayerInfo[playerid][MuteWarnings], ServerInfo[MaxMuteWarnings] );
            SendClientMessage(playerid,red,string);
        } else { // Si llego al lнmite de advertencias
            SendClientMessage(playerid,red,"Has sido advertido ! Ahora has sido kickeado");
            format(string, sizeof(string),"***%s [%d] ha sido Kickeado por exceder las muteadas", PlayerName2(playerid), playerid);
            SendClientMessageToAll(red,string);
            SaveToFile("KickLog",string); Kick(playerid);
        }
    }  
    return 0; // Ingora el texto por defecto
}
EDIT:

Para introducir cуdigo PAWN no uses el [ php] [/ php] (Sin espacios), usa [ pawn] [/pawn] (Sin espacios).
Reply
#4

Igual, Zodiaco. Te recomiendo que des mбs informaciуn acerca de tu problema siempre, y que no dejes los cуdigos para que los demбs te lo resuelvan.

Fijate de colocar el cуdigo de Scope25. Pero seguramente ya estбs retornando a 0 y tenes mбs funciones, asн que aсadi esto:

pawn Код:
if(PlayerInfo[playerid][Muted] == 1)
    {
        PlayerInfo[playerid][MuteWarnings]++;
        new string[128];
        if(PlayerInfo[playerid][MuteWarnings] < ServerInfo[MaxMuteWarnings]) {
            format(string, sizeof(string),"CUIDADO: Estбs muteado, si continuas hablando serбs kickeado. (%d / %d)", PlayerInfo[playerid][MuteWarnings], ServerInfo[MaxMuteWarnings] );
            SendClientMessage(playerid,red,string);
        } else {
            SendClientMessage(playerid,red,"Has sido advertido ! Ahora has sido kickeado");
            format(string, sizeof(string),"***%s [%d] ha sido Kickeado por exceder las muteadas", PlayerName2(playerid), playerid);
            SendClientMessageToAll(red,string);
            SaveToFile("KickLog",string); Kick(playerid);
        }
    }
Debajo de la llave que abre el public.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)