mod automix
#1
alguno podría editar este .sma para que no se bloquee el say en todo el mix? gracias.[/quote][/code][/php]


Archivos adjuntos
.sma   Descargar AMXX / tcs_mix.sma (Tamaño: 73.44 KB / Descargas: 48)
Responder
#2
cambia esto:


Código PHP:
stock fn_handle_join(idmsg_idteam)
{
    new 
iMsgBlock get_msg_block(msg_id);
    
set_msg_block(msg_idBLOCK_SET);
    
    if(!
team)
        
team TEAM_SPEC;
    
    
engclient_cmd(id"jointeam"g_sTeamNums[team]);
    
    new 
iClass fn_get_team_class(team);
    if(
<= iClass <= 4)
    {
        if(
g_mix_valid)
        {
            
remove_task(id TASK_HUD);
            
remove_task(id TASK_MENU_READY);
        }
        
        
engclient_cmd(id"joinclass"g_sClassNums[iClass 1]);
        
fn_close_menus(id);
    }
    
    
set_msg_block(msg_idiMsgBlock);
    
    new 
CsTeams:iCS cs_get_user_team(id);
    new 
iGET get_user_team(id);
    new 
iOFF;
    
    if(
pev_valid(id) != 2)
        
iOFF = -1;
    
    
iOFF get_pdata_int(id1145);
    
    if(!
iCS && !iGET && !iOFF)
    {
        
set_pdata_int(id125, (get_pdata_int(id1255) & ~(1<<8)), 5);
        
        
engclient_cmd(id"jointeam"g_sTeamNums[TEAM_SPEC]);
    }


por esto ------>

Código PHP:
stock fn_handle_join(idmsg_idteam)
{
    
    
    if(!
team)
        
team TEAM_SPEC;
    
    
engclient_cmd(id"jointeam"g_sTeamNums[team]);
    
    new 
iClass fn_get_team_class(team);
    if(
<= iClass <= 4)
    {
        if(
g_mix_valid)
        {
            
remove_task(id TASK_HUD);
            
remove_task(id TASK_MENU_READY);
        }
        
        
engclient_cmd(id"joinclass"g_sClassNums[iClass 1]);
        
fn_close_menus(id);
    }
    
    
    
    new 
CsTeams:iCS cs_get_user_team(id);
    new 
iGET get_user_team(id);
    new 
iOFF;
    
    if(
pev_valid(id) != 2)
        
iOFF = -1;
    
    
iOFF get_pdata_int(id1145);
    
    if(!
iCS && !iGET && !iOFF)
    {
        
set_pdata_int(id125, (get_pdata_int(id1255) & ~(1<<8)), 5);
        
        
engclient_cmd(id"jointeam"g_sTeamNums[TEAM_SPEC]);
    }


no lo probe, pero creo que es eso
Responder
#3
Eso no tiene nada que ver con el say!. Es más estás rompiendo el AutoJoin del Automix.

Podes explicarte un poco más sobre tu problema ?
Queres que al escribir en say, puedan verlo todos ?
Responder
#4
(10/06/2016, 02:46 PM)CSAxel escribió: Eso no tiene nada que ver con el say!. Es más estás rompiendo el AutoJoin del Automix.

Podes explicarte un poco más sobre tu problema ?
Queres que al escribir en say, puedan verlo todos ?

(CREO) Él quiere cuando empiece el mix no se bloquee el chat(say)...
Yo recuerdo cuando jugué en el automix creo que había un comando para admin que servia para activar/desactivar el chat.

(No sé si era en el automix o el mix común)
Responder
#5
/nosay y /nonick

esos son los comandos, y son del MixMaker osea un servidor mix comun, el problema que tiene este auto mix, es que los admines pueden leer el team contrario, y que los usuarios no pueden hablar por say general, lo que el quiere es desbloquear el say general, osea que si pueda ser usado el SAY
Responder
#6
Reemplazá ésta función por ésta otra.

Código PHP:
public clcmd_Say(id)
{
    if(!
is_user_connected(id))
        return 
PLUGIN_HANDLED;
    
    if(
g_duel || g_chosing)
        return 
PLUGIN_HANDLED;
    
    if(
g_mix_valid)
    {
        new 
Float:nexTime get_gametime();
        if(
g_Flooding[id] > nexTime)
        {
            if(
g_Flood[id] >= 3)
            {
                
client_print(idprint_console"** Deja de saturar el servidor **");
                
g_Flooding[id] = nexTime 0.75 3.0;
                
                return 
PLUGIN_HANDLED;
            }
            
            
g_Flood[id]++
        }
        else if(
g_Flood[id]) g_Flood[id]--;
        
        
g_Flooding[id] = nexTime 0.75;

        static 
sMessage[191];
        
read_args(sMessagecharsmax(sMessage));
        
remove_quotes(sMessage);
        
        
replace_all(sMessagecharsmax(sMessage), "%""% ");
        
replace_all(sMessagecharsmax(sMessage), "!y""");
        
replace_all(sMessagecharsmax(sMessage), "!t""");
        
replace_all(sMessagecharsmax(sMessage), "!g""");
        
        if(
equali(sMessage""))
            return 
PLUGIN_HANDLED;
        
        new 
iAlive is_user_alive(id);
        new 
iTeam get_user_team(id);
        new 
iColor DONT_CHANGE;
        
        if(
iTeam == || iTeam == 3)
        {
            
format(sMessagecharsmax(sMessage), "!y(ESPECTADOR) !t%s!y : %s"g_playername[id], sMessage);
            
            
iColor SPECTATOR;
        }
        else
        {
            
format(sMessagecharsmax(sMessage), "!y%s(%s) !t%s!y : %s", (iAlive) ? "" "*DEAD* ", (g_teamid[id] == 1) ? "PUBEROS" "MIXEROS"g_playername[id], sMessage);
            
            if(
iTeam == 1iColor TERRORIST;
            else 
iColor CT;
        }
        
        
replace_all(sMessagecharsmax(sMessage), "!y""^x01");
        
replace_all(sMessagecharsmax(sMessage), "!t""^x03");
        
replace_all(sMessagecharsmax(sMessage), "!g""^x04");
        
        new 
i;
        
        for(
1<= g_maxplayersi++)
        {
            if(!(
get_user_flags(i) & ADMIN_PASSWORD))
            {
                if(
get_user_team(i) != iTeam)
                    continue;
                
                if(
iAlive && !is_user_alive(i))
                    continue;
                
                if(!
iAlive && is_user_alive(i))
                    continue;
            }
            
            
fn_CC(iiColorsMessage);
        }
        
        return 
PLUGIN_HANDLED;
    }
    
    return 
PLUGIN_CONTINUE;


-->

Código PHP:
public clcmd_Say(id)
{
    if(!
is_user_connected(id))
        return 
PLUGIN_HANDLED;
    
    if(
g_mix_valid)
    {
        new 
Float:nexTime get_gametime();
        if(
g_Flooding[id] > nexTime)
        {
            if(
g_Flood[id] >= 3)
            {
                
client_print(idprint_console"** Deja de saturar el servidor **");
                
g_Flooding[id] = nexTime 0.75 3.0;
                
                return 
PLUGIN_HANDLED;
            }
            
            
g_Flood[id]++
        }
        else if(
g_Flood[id]) g_Flood[id]--;
        
        
g_Flooding[id] = nexTime 0.75;

        static 
sMessage[191];
        
read_args(sMessagecharsmax(sMessage));
        
remove_quotes(sMessage);
        
        
replace_all(sMessagecharsmax(sMessage), "%""% ");
        
replace_all(sMessagecharsmax(sMessage), "!y""");
        
replace_all(sMessagecharsmax(sMessage), "!t""");
        
replace_all(sMessagecharsmax(sMessage), "!g""");
        
        if(
equali(sMessage""))
            return 
PLUGIN_HANDLED;
        
        new 
iAlive is_user_alive(id);
        new 
iTeam get_user_team(id);
        new 
iColor DONT_CHANGE;
        
        if(
iTeam == || iTeam == 3)
        {
            
format(sMessagecharsmax(sMessage), "!y(ESPECTADOR) !t%s!y : %s"g_playername[id], sMessage);
            
            
iColor SPECTATOR;
        }
        else
        {
            
format(sMessagecharsmax(sMessage), "!y%s(%s) !t%s!y : %s", (iAlive) ? "" "*DEAD* ", (g_teamid[id] == 1) ? "PUBEROS" "MIXEROS"g_playername[id], sMessage);
            
            if(
iTeam == 1iColor TERRORIST;
            else 
iColor CT;
        }
        
        
replace_all(sMessagecharsmax(sMessage), "!y""^x01");
        
replace_all(sMessagecharsmax(sMessage), "!t""^x03");
        
replace_all(sMessagecharsmax(sMessage), "!g""^x04");
        
        new 
i;
        
        for(
1<= g_maxplayersi++)
        {
            if(!(
get_user_flags(i) & ADMIN_PASSWORD))
            {
                if(
iAlive && !is_user_alive(i))
                    continue;
                
                if(!
iAlive && is_user_alive(i))
                    continue;
            }
            
            
fn_CC(iiColorsMessage);
        }
        
        return 
PLUGIN_HANDLED;
    }
    
    return 
PLUGIN_CONTINUE;

Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)