AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   authorized & desconnect (https://forums.alliedmods.net/showthread.php?t=55327)

Z@C 05-19-2007 15:15

authorized & desconnect
 
authorized
Code:

new bool:admin = false
                new bool:hltv = false
                get_players(players, num)
                for(new i = 0; i < num; i++) {
                        if (is_user_hltv(players[i])) {
                                hltv = true
                        }
                        if (access(players[i], ADMIN_ACCESS)) {
                                admin = true
                        }
                }
                if (!access(id, ADMIN_ACCESS) && ((num == 0) || ((num == 1) && ((hltv == true) || (admin == false))))) {
                        server_cmd("kick #%d %s", id, Reason)
                        admin = false
                        hltv = false
                }
                if (access(id, ADMIN_ACCESS) && (admin == false)) {
                        set_task(15.0, "change_pass", id)
                }

disconnect
Code:

if (access(id, ADMIN_ACCESS) && (get_cvar_num("adm_for_cw") == 1)) {
                new bool:admin = false
                get_players(players, num)
                for(new i = 0; i < num; i++) {
                        if (access(players[i], ADMIN_ACCESS)) {
                                admin = true
                        }
                }
                if (admin == false) {
                        for(new i = 0; i < num; i++) {
                                if (!is_user_hltv(players[i])) {
                                        server_cmd("kick #%d %s", players[i], Reason)
                                }
                        }
                        set_cvar_string("sv_password", "")
                }
        }

HELP! not auth not disc didn't work

_Master_ 05-19-2007 21:00

Re: authorized & desconnect
 
post the whole code please.

Z@C 05-20-2007 06:14

Re: authorized & desconnect
 
PHP Code:

/*
* If you want change server password Say/Say Team /set_pw
*
* If you want know server password Say/Say Team /pw OR /pw2all for all players
*/
#include <amxmodx>
#include <amxmisc>

#define    passlen    8

#define ADMIN_ACCESS    ADMIN_MAP

new players[32], num
new Reason[] = "You can't play on this server without ADMIN"

public plugin_init() {
    
register_plugin("ADM Only + Rand Pass","3.0","Z@C")
    
register_cvar("adm_for_cw""1")
    
register_logevent("reset_pass",2,"1=Round_Start")
    
    
register_clcmd("say /pw","show_pass")
    
register_clcmd("say_team /pw","show_pass")
    
    
register_clcmd("say /pw2all","show_pass_all")
    
register_clcmd("say_team /pw2all","show_pass_all")
    
    
register_clcmd("say /set_pw","change_pass")
    
register_clcmd("say_team /set_pw","change_pass")
}

public 
client_authorized(id) {
    if (
get_cvar_num("adm_for_cw") == 1) {
        if (!
is_user_hltv(id) || !is_user_bot(id)) {
            new 
admin 0
            
new hltv 0
            get_players
(playersnum)
            for(new 
0<= numi++) {
                if (
is_user_hltv(players[i])) {
                    
hltv++
                }
                if (
access(players[i], ADMIN_ACCESS)) {
                    
admin++
                }
            }
            if (!
access(idADMIN_ACCESS) && ((num == 0) || ((num == 1) && ((hltv == 1) || (admin == 0))))) {
                
server_cmd("kick #%d %s"idReason)
                
admin 0
                hltv 
0
            
}
            if (
access(idADMIN_ACCESS) && (admin == 0)) {
                
set_task(15.0"change_pass"id)
            }
        }
    }
    
/*
    if (get_cvar_num("adm_for_cw") == 1) {
        
        if (access(id, ADMIN_ACCESS) && (admin == false)) {
            set_task(15.0, "change_pass", id)
        }
    }
    */
}


public 
change_pass(id) {
    if (
access(idADMIN_ACCESS) && (get_cvar_num("adm_for_cw") == 1)) {
        new 
new_pass[passlen]
        
set_cvar_string("sv_password""")
        for(new 
0passlenp++) {
            
format(new_passpasslen"%s%c"new_passrandom_num('A','z'))
        }
        
set_cvar_string("sv_password"new_pass)
        
client_print(idprint_chat"Password is set: %s"new_pass)
    }
    return 
PLUGIN_HANDLED
}

public 
show_pass(id) {
    if ((
get_user_team(id) == 3) || is_user_hltv(id)){
        return 
PLUGIN_HANDLED
    
}
    new 
view_pass[passlen]
    
get_cvar_string("sv_password"view_passpasslen)
    
client_print(idprint_chat"Server Password: %s"view_pass)
    return 
PLUGIN_HANDLED
}

public 
show_pass_all(id) {
    if ((
get_user_team(id) == 3) || is_user_hltv(id)){
        return 
PLUGIN_HANDLED
    
}
    new 
view_pass[passlen]
    
get_cvar_string("sv_password"view_passpasslen)
    for(new 
1<= get_maxplayers(); i++) {
        if (
get_user_team(i) == 3) {
            return 
PLUGIN_CONTINUE
            
} else {
            
client_print(idprint_chat"Server Password: %s"view_pass)
        }
    }
    return 
PLUGIN_HANDLED
}

public 
reset_pass() {
    if (
get_cvar_num("adm_for_cw") == 1) {
        new 
res_pass[passlen]
        
get_cvar_string("sv_password"res_passpasslen)
        
get_players(playersnum)
        if ((
num 2) && !equali(res_pass,"")) {
            
set_cvar_string("sv_password""")
        }
    }
}

public 
client_disconnect(id) {
    if (
access(idADMIN_ACCESS) && (get_cvar_num("adm_for_cw") == 1)) {
        new 
admin 0
        
for(new 1<= get_maxplayers(); i++) {
            if (
access(iADMIN_ACCESS)) {
                
admin++
            }
        }
        if (
admin == 0) {
            for(new 
1<= get_maxplayers(); i++) {
                if (!
is_user_hltv(i)) {
                    
server_cmd("kick #%d %s"iReason)
                }
            }
            
set_cvar_string("sv_password""")
        }
    }


authorized:
if player is reconnect he is connect,but must kick with reason

Z@C 05-20-2007 10:21

Re: authorized & desconnect
 
i do it ... :)


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

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