Raised This Month: $ Target: $400
 0% 

Loop


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
#8 SickneSS
BANNED
Join Date: Sep 2008
Location: Here
Old 05-12-2010 , 02:00   Re: Loop
Reply With Quote #1

I used this metod per case...
PHP Code:
for(new i;sizeof CanSay;i++)
containi(name,CanSay[i])
continue 
and this other...
PHP Code:
/*    
    mixm_nosaytype :
                         * 0 : Hablan los admins y muestra say /pausa.
                         * 1 : Hablan los admins y no muestra say /pausa.
             * 2 : Hablan los admins,permite hablar por freezetime y muestra say /pausa.
                         * 3 : Hablan los admins,permite hablar por freezetime y no muestra say /pausa
*/

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Chat Blocker"
#define VERSION "1.0"
#define AUTHOR "#8 SickneSS"

/* Chat Blocker */

new const CanSay[][] = 
{     
    
"[TL]",
    
"[CPT]",
    
"[CAPTAIN]" 
}

new 
NoSay
new CptCanSay
new NoSayType
new pFreezetime

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
NoSay register_cvar("mixm_nosay","0")
    
CptCanSay register_cvar("mixm_cptcansay","0")
    
NoSayType register_cvar("mixm_nosaytype","0")
    
pFreezetime get_cvar_pointer("mp_freezetime")
    
    
register_clcmd("say","HookSay")
    
register_clcmd("say /nosay","cmdSayNoSay",ADMIN_CVAR,"<Lock/Unlock the chat>")
}

public 
cmdSayNoSay(id,level,cid) {
    
    if(!
cmd_access(id,level,cid,1))  
        return 
PLUGIN_HANDLED
    
    
new adminname[32]
    
get_user_name(idadminname31)
    
    
set_pcvar_num(NoSay,get_pcvar_num(NoSay) == 0)
    
client_print(0,print_chat,"El Admin %s %sbloqueo el chat",adminnameget_pcvar_num(NoSay) ? "" "des")
    
    return 
PLUGIN_HANDLED
}

public 
HookSay(id) {
    
    if(!
get_pcvar_num(NoSay))
        return 
PLUGIN_CONTINUE
    
    
if(get_user_flags(id) & ADMIN_CHAT)
        return 
PLUGIN_CONTINUE
    
    
new name[32]
    
get_user_name(id,name,31)
    
    new 
said[192]
    
read_args(said,191)
    
    if(
get_pcvar_num(CptCanSay))
    {
        for(new 
i;sizeof CanSay;i++)
        if(
containi(name,CanSay[i]) != -1)
            return 
PLUGIN_CONTINUE
    
}
    
    switch(
get_pcvar_num(NoSayType))
    {    
        case 
:
        {        
            if(
containi(said,"/pausa") != -1)
            {
                
client_print(0,print_chat,"El jugador %s,esta pidiendo pausa",name)
                return 
PLUGIN_HANDLED
            
}
            
client_print(id,print_chat,"Say Bloqueado")
            
client_print(id,print_chat,"Solo puedes escribir /pausa,para pedir pausear el juego")
            return 
PLUGIN_HANDLED
        
}
        case 
:
        {
            
client_print(id,print_chat,"Say Bloqueado")
            return 
PLUGIN_HANDLED
        
}
        case 
2:
        {
            if(
get_pcvar_float(pFreezetime) <= 0)
            {
                if(
containi(said,"/pausa") != -1)
                {
                    
client_print(0,print_chat,"El jugador %s,esta pidiendo pausa",name)
                    return 
PLUGIN_HANDLED
                
}
                
client_print(id,print_chat,"Say Bloqueado")
                
client_print(id,print_chat,"Solo puedes escribir /pausa,para pedir pausear el juego")
                return 
PLUGIN_HANDLED
            
}
            return 
PLUGIN_CONTINUE
        
}
        case 
3:
        {
            if(
get_pcvar_float(pFreezetime) <= 0)
            {
                
client_print(id,print_chat,"Say Bloqueado")
                return 
PLUGIN_HANDLED
            
}
            return 
PLUGIN_CONTINUE
        
}
    }        
    return 
PLUGIN_HANDLED

about infochanged,I don't like them,because have some delay to check name
#8 SickneSS is offline
Send a message via MSN to #8 SickneSS Send a message via Skype™ to #8 SickneSS
Exolent[jNr]
Veteran Member
Join Date: Feb 2007
Location: Tennessee
Old 05-12-2010 , 02:06   Re: Loop
Reply With Quote #2

Quote:
Originally Posted by #8 SickneSS View Post
about infochanged,I don't like them,because have some delay to check name
There is no delay.

Code:
public client_infochanged( iPlayer ) {     new szNewName[ 32 ], szOldName[ 32 ];     get_user_info( iPlayer, "name", szNewName, charsmax( szNewName ) );     get_user_name( iPlayer, szOldName, charsmax( szOldName ) );         if( !equal( szOldName, szNewName ) )     {         // changed from 'szOldName' to 'szNewName'     } }
__________________
No private work or selling mods.
Quote:
Originally Posted by xPaw View Post
I love you exolent!
Exolent[jNr] is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 03:35.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode