"x" Segundos para Reg / Log o Kick
#1
Hola Les queria pedir una ayudita Sonrisa
Queria agregarle Al Sistema de Cuentas de Manu :3 Que tenga 60 segundos Para Registrarse o Loguearse de no ser Asi que lo Kickeara

Si no es mucha molestia Gracias.

Código PHP:
#include <amxmisc>
#include <fakemeta>
#include <adv_vault>
new g_points[33],g_password[33][20],g_pj[33][32],bool:g_login[33],g_vault,g_msgvgui,g_msgshowmenu;
enum {
    
FIELD_POINTS=0,
    
FIELD_PASSWORD,
    
MAX_FIELDS
}
const 
KEYSMENU = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9);
new 
g_fields[MAX_FIELDS];
public 
plugin_init(){
    
register_plugin("Account System","0.1","LNATIC");
    
register_clcmd("Ingresar_Password""clcmd_log");
    
register_clcmd("Nueva_Password""clcmd_create");
    
register_menu("Account Menu"KEYSMENU"handler_menu");
    
g_msgvgui get_user_msgid("VGUIMenu");
    
g_msgshowmenu get_user_msgid("ShowMenu");
    
register_message(g_msgvgui"message_vguimenu");
    
register_message(g_msgshowmenu"message_vguimenu");
    
register_forward(FM_ClientUserInfoChanged"fw_clientinfo_changed")
    
g_vault adv_vault_open("dr_data"false);
    
g_fields[FIELD_POINTS]    = adv_vault_register_field(g_vault"lifes");
    
g_fields[FIELD_PASSWORD] = adv_vault_register_field(g_vault"pw"DATATYPE_STRING20);
    
adv_vault_init(g_vault);
}
public 
client_putinserver(id){
    
g_login[id] = false;
    
get_user_name(idg_pj[id], 31);
}
public 
client_disconnect(id){
    
save(id);
    
g_login[id] = false;
}
public 
acc_menu(id){
    new 
menu[60],len 0;
    
len += formatex(menu[len], sizeof menu len"\wSistema de cuentas^n^n");
    
len += formatex(menu[len], sizeof menu len"\r1. \w%s",!adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");
    
show_menu(idKEYSMENUmenu, -1"Account Menu");
    return 
1;
}
public 
handler_menu(id,key){
    if(
key == 0)    adv_vault_get_prepare(g_vault_g_pj[id]) ? client_cmd(id,"messagemode Ingresar_Password") : client_cmd(id,"messagemode Nueva_Password");
    return 
1;
}
public 
message_vguimenu(msgiddestid){
    switch(
g_login[id]){
        case 
0:acc_menu(id);
        case 
1:return 0;
    }
    return 
1;
}
public 
fw_clientinfo_changed(idbuffer){
    if(
is_user_connected(id)){
        if(
g_login[id]){
            static 
oldname[33];
            
engfunc(EngFunc_InfoKeyValuebuffer"name"oldnamesizeof oldname 1);
            if(
equaloldnameg_pjid ])) return FMRES_IGNORED;
            
set_user_info(id"name"g_pj[id]);
            
client_cmd(id"setinfo ^"name^" ^"%s^"",g_pj[id]);
        }
    }
    return 
FMRES_IGNORED;    
}
public 
clcmd_log(id){
    new 
buffer[40];
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    
adv_vault_get_prepare(g_vault_g_pj[id]);
    
adv_vault_get_field(g_vaultg_fields[FIELD_PASSWORD], buffercharsmax(buffer));
    if( 
equal(buffer,g_password[id]) ){
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido de nuevo %s!",g_pj[id]);
        
load(id);
        
join(id);
    }
    else{
        
set_hudmessage(25500, -1.0, -1.006.012.0);
        
client_print(id,print_center,"Password incorrecta.");
    }
}
public 
clcmd_create(id){
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    if( 
equal(g_password[id],"") || contain(g_password[id]," ") != -)    return 1;
    else{
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido %s!",g_pj[id]);
        
save(id);
        
join(id);
    }
    return 
1;
}
public 
join(id){
    
// Jointeam force by RauliTop
    
static teammsg_blockteammsg_block_vguirestorevgui;
    
restore get_pdata_int(id510);
    
vgui restore & (1<<0);
    if (
vguiset_pdata_int(id510restore & ~(1<<0));
    
teammsg_block get_msg_block(g_msgshowmenu);
    
teammsg_block_vgui get_msg_block(g_msgvgui);
    
set_msg_block(g_msgshowmenuBLOCK_ONCE);
    
set_msg_block(g_msgvguiBLOCK_ONCE);
    
engclient_cmd(id"jointeam""5");
    
engclient_cmd(id"joinclass""5");
    
set_msg_block(g_msgshowmenuteammsg_block);
    
set_msg_block(g_msgvguiteammsg_block_vgui);
    if (
vguiset_pdata_int(id510restore);
}
public 
save(id){
    if(
g_login[id]){
        
adv_vault_set_start(g_vault);
        
adv_vault_set_field(g_vaultg_fields[FIELD_POINTS], g_points[id]);
        
adv_vault_set_field(g_vaultg_fields[FIELD_PASSWORD], g_password[id]);
        
adv_vault_set_end(g_vault0g_pj[id]);
    }
}
public 
load(id){
    if(!
adv_vault_get_prepare(g_vault_g_pj[id]) || !is_user_connected(id))    return;
    
g_points[id] = adv_vault_get_field(g_vaultg_fields[FIELD_POINTS]);

Responder
#2
Perdor Por Bumpear Temas Pero La razon es que necesito Ayuda Triste Pliz Me pueden Ayudar Gracias y Perdonen.
Responder
#3
algo así ?

Código PHP:
#include <amxmisc>
#include <fakemeta>
#include <adv_vault>
new g_points[33],g_password[33][20],g_pj[33][32],bool:g_login[33],g_vault,g_msgvgui,g_msgshowmenu;
enum {
    
FIELD_POINTS=0,
    
FIELD_PASSWORD,
    
MAX_FIELDS
}
const 
KEYSMENU = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9);
const 
TASK_KICK 23233
new g_fields[MAX_FIELDS];
public 
plugin_init(){
    
register_plugin("Account System","0.1","LNATIC");
    
register_clcmd("Ingresar_Password""clcmd_log");
    
register_clcmd("Nueva_Password""clcmd_create");
    
register_menu("Account Menu"KEYSMENU"handler_menu");
    
g_msgvgui get_user_msgid("VGUIMenu");
    
g_msgshowmenu get_user_msgid("ShowMenu");
    
register_message(g_msgvgui"message_vguimenu");
    
register_message(g_msgshowmenu"message_vguimenu");
    
register_forward(FM_ClientUserInfoChanged"fw_clientinfo_changed")
    
g_vault adv_vault_open("dr_data"false);
    
g_fields[FIELD_POINTS]    = adv_vault_register_field(g_vault"lifes");
    
g_fields[FIELD_PASSWORD] = adv_vault_register_field(g_vault"pw"DATATYPE_STRING20);
    
adv_vault_init(g_vault);
}
public 
client_putinserver(id){
    
g_login[id] = false;
    
get_user_name(idg_pj[id], 31);
}
public 
client_disconnect(id){
    
save(id);
    
g_login[id] = false;
}
public 
acc_menu(id){
    new 
menu[60],len 0;
    
len += formatex(menu[len], sizeof menu len"\wSistema de cuentas^n^n");
    
len += formatex(menu[len], sizeof menu len"\r1. \w%s",!adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");
    
show_menu(idKEYSMENUmenu, -1"Account Menu");
    
set_task(60.0"sacar"id+TASK_KICK)
    
client_print(idprint_chat"Tienes 60 Segundos para %s", !adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");
    return 
1;
}
public 
sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id)) return;
    
    
// aca sacas al pibe con server_cmd
}
public 
handler_menu(id,key){
    if(
key == 0)    adv_vault_get_prepare(g_vault_g_pj[id]) ? client_cmd(id,"messagemode Ingresar_Password") : client_cmd(id,"messagemode Nueva_Password");
    return 
1;
}
public 
message_vguimenu(msgiddestid){
    switch(
g_login[id]){
        case 
0:acc_menu(id);
        case 
1:return 0;
    }
    return 
1;
}
public 
fw_clientinfo_changed(idbuffer){
    if(
is_user_connected(id)){
        if(
g_login[id]){
            static 
oldname[33];
            
engfunc(EngFunc_InfoKeyValuebuffer"name"oldnamesizeof oldname 1);
            if(
equaloldnameg_pjid ])) return FMRES_IGNORED;
            
set_user_info(id"name"g_pj[id]);
            
client_cmd(id"setinfo ^"name^" ^"%s^"",g_pj[id]);
        }
    }
    return 
FMRES_IGNORED;    
}
public 
clcmd_log(id){
    new 
buffer[40];
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    
adv_vault_get_prepare(g_vault_g_pj[id]);
    
adv_vault_get_field(g_vaultg_fields[FIELD_PASSWORD], buffercharsmax(buffer));
    if( 
equal(buffer,g_password[id]) ){
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido de nuevo %s!",g_pj[id]);
        
load(id);
        
join(id);
    }
    else{
        
set_hudmessage(25500, -1.0, -1.006.012.0);
        
client_print(id,print_center,"Password incorrecta.");
    }
}
public 
clcmd_create(id){
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    if( 
equal(g_password[id],"") || contain(g_password[id]," ") != -)    return 1;
    else{
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido %s!",g_pj[id]);
        
save(id);
        
join(id);
    }
    return 
1;
}
public 
join(id){
    
// Jointeam force by RauliTop
    
static teammsg_blockteammsg_block_vguirestorevgui;
    
restore get_pdata_int(id510);
    
vgui restore & (1<<0);
    if (
vguiset_pdata_int(id510restore & ~(1<<0));
    
teammsg_block get_msg_block(g_msgshowmenu);
    
teammsg_block_vgui get_msg_block(g_msgvgui);
    
set_msg_block(g_msgshowmenuBLOCK_ONCE);
    
set_msg_block(g_msgvguiBLOCK_ONCE);
    
engclient_cmd(id"jointeam""5");
    
engclient_cmd(id"joinclass""5");
    
set_msg_block(g_msgshowmenuteammsg_block);
    
set_msg_block(g_msgvguiteammsg_block_vgui);
    if (
vguiset_pdata_int(id510restore);
}
public 
save(id){
    if(
g_login[id]){
        
adv_vault_set_start(g_vault);
        
adv_vault_set_field(g_vaultg_fields[FIELD_POINTS], g_points[id]);
        
adv_vault_set_field(g_vaultg_fields[FIELD_PASSWORD], g_password[id]);
        
adv_vault_set_end(g_vault0g_pj[id]);
    }
}
public 
load(id){
    if(!
adv_vault_get_prepare(g_vault_g_pj[id]) || !is_user_connected(id))    return;
    
g_points[id] = adv_vault_get_field(g_vaultg_fields[FIELD_POINTS]);


en esta public :
Código PHP:
public sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id)) return;
    
    
// aca sacas al pibe con server_cmd


sacalo con server_cmd , no me acuerdo como Lengua
(10/10/2014, 06:38 PM)RauliTop escribió:
(10/10/2014, 04:40 PM)ivan escribió: no sabía que se podia poner los iconos gestuales cuando das reputacion negativa/positiva.
ui, peligro...
pronto habrán reputaciones de ivan:
hace muy muy muii DafuqYao mingGenius buenos Thats what she saidtutoriales Proud me encataan Whatever
Responder
#4
El task pomelo cuando se conecta, no cuando le muestra el menú porque lo puede cerrar y volver a abrir y tiene 60 segundos mas, y así sucesivamente
(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)

(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Responder
#5
Código PHP:
public client_connect(id)
{
    
set_task(60.0"sacar"id+TASK_KICK)
    
client_print(idprint_chat"Tienes 60 Segundos para %s", !adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");

    new 
szName[32
    
get_user_nameidszNamecharsmax(szName) )
}
public 
sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id)) return;
    
    
server_cmd"kick #%i"get_user_userid(id) )


    ? 
Asi 
Responder
#6
En sacar(id) además de checkar que este conectado, checkea que no este registrado/logueado para que no lo eche del servidor aunque ya se haya registrado/logueado.
(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)

(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Responder
#7
Código PHP:
public client_connect(id)
{
    
set_task(60.0"sacar"id+TASK_KICK)
    
client_print(idprint_chat"Tienes 60 Segundos para %s", !adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");

    new 
szName[32
    
get_user_nameidszNamecharsmax(szName) )
}
public 
sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id) &% g_login[id] = true) return;
    

    
server_cmd"kick #%i"get_user_userid(id) )


Si lo pongo hay no lo Kickea ? Si Se Registra Antes de los 60 Segundos

Osea Seria esta conectado y Logueado para la funcion y no lo kickea de no ser asi Lo kickea ?

Nu No me funciono

Código PHP:
#include <amxmisc>
#include <fakemeta>
#include <adv_vault>
new g_points[33],g_password[33][20],g_pj[33][32],bool:g_login[33],g_vault,g_msgvgui,g_msgshowmenu;
enum {
    
FIELD_POINTS=0,
    
FIELD_PASSWORD,
    
MAX_FIELDS
}
enum (+= 100)
{
    
TASK_KICK 2000

#define ID_SHOWHUD (taskid - TASK_KICK)

const KEYSMENU = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9);
new 
g_fields[MAX_FIELDS];
public 
plugin_init(){
    
register_plugin("Account System","0.1","LNATIC");
    
register_clcmd("Ingresar_Password""clcmd_log");
    
register_clcmd("Nueva_Password""clcmd_create");
    
register_menu("Account Menu"KEYSMENU"handler_menu");
    
g_msgvgui get_user_msgid("VGUIMenu");
    
g_msgshowmenu get_user_msgid("ShowMenu");
    
register_message(g_msgvgui"message_vguimenu");
    
register_message(g_msgshowmenu"message_vguimenu");
    
register_forward(FM_ClientUserInfoChanged"fw_clientinfo_changed")
    
g_vault adv_vault_open("dr_data"false);
    
g_fields[FIELD_POINTS]    = adv_vault_register_field(g_vault"lifes");
    
g_fields[FIELD_PASSWORD] = adv_vault_register_field(g_vault"pw"DATATYPE_STRING20);
    
adv_vault_init(g_vault);
}
public 
client_connect(id)
{
    
set_task(60.0"sacar"id+TASK_KICK)
    
client_print(idprint_chat"Tienes 60 Segundos para %s", !adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");

    new 
szName[32
    
get_user_nameidszNamecharsmax(szName) )
}
public 
sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id) || g_login[id]) 
    return;
    

    
server_cmd"kick #%i"get_user_userid(id) )

public 
client_putinserver(id)
{
    
g_login[id] = false;
    
get_user_name(idg_pj[id], 31);
}
public 
client_disconnect(id){
    
save(id);
    
g_login[id] = false;
}
public 
acc_menu(id){
    new 
menu[60],len 0;
    
len += formatex(menu[len], sizeof menu len"\wSistema de cuentas^n^n");
    
len += formatex(menu[len], sizeof menu len"\r1. \w%s",!adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");
    
show_menu(idKEYSMENUmenu, -1"Account Menu");
    return 
1;
}
public 
handler_menu(id,key){
    if(
key == 0)    adv_vault_get_prepare(g_vault_g_pj[id]) ? client_cmd(id,"messagemode Ingresar_Password") : client_cmd(id,"messagemode Nueva_Password");
    return 
1;
}
public 
message_vguimenu(msgiddestid){
    switch(
g_login[id]){
        case 
0:acc_menu(id);
        case 
1:return 0;
    }
    return 
1;
}
public 
fw_clientinfo_changed(idbuffer){
    if(
is_user_connected(id)){
        if(
g_login[id]){
            static 
oldname[33];
            
engfunc(EngFunc_InfoKeyValuebuffer"name"oldnamesizeof oldname 1);
            if(
equaloldnameg_pjid ])) return FMRES_IGNORED;
            
set_user_info(id"name"g_pj[id]);
            
client_cmd(id"setinfo ^"name^" ^"%s^"",g_pj[id]);
        }
    }
    return 
FMRES_IGNORED;    
}
public 
clcmd_log(id){
    new 
buffer[40];
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    
adv_vault_get_prepare(g_vault_g_pj[id]);
    
adv_vault_get_field(g_vaultg_fields[FIELD_PASSWORD], buffercharsmax(buffer));
    if( 
equal(buffer,g_password[id]) ){
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido de nuevo %s!",g_pj[id]);
        
load(id);
        
join(id);
    }
    else{
        
set_hudmessage(25500, -1.0, -1.006.012.0);
        
client_print(id,print_center,"Password incorrecta.");
    }
}
public 
clcmd_create(id){
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    if( 
equal(g_password[id],"") || contain(g_password[id]," ") != -)    return 1;
    else{
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido %s!",g_pj[id]);
        
save(id);
        
join(id);
    }
    return 
1;
}
public 
join(id){
    
// Jointeam force by RauliTop
    
static teammsg_blockteammsg_block_vguirestorevgui;
    
restore get_pdata_int(id510);
    
vgui restore & (1<<0);
    if (
vguiset_pdata_int(id510restore & ~(1<<0));
    
teammsg_block get_msg_block(g_msgshowmenu);
    
teammsg_block_vgui get_msg_block(g_msgvgui);
    
set_msg_block(g_msgshowmenuBLOCK_ONCE);
    
set_msg_block(g_msgvguiBLOCK_ONCE);
    
engclient_cmd(id"jointeam""5");
    
engclient_cmd(id"joinclass""5");
    
set_msg_block(g_msgshowmenuteammsg_block);
    
set_msg_block(g_msgvguiteammsg_block_vgui);
    if (
vguiset_pdata_int(id510restore);
}
public 
save(id){
    if(
g_login[id]){
        
adv_vault_set_start(g_vault);
        
adv_vault_set_field(g_vaultg_fields[FIELD_POINTS], g_points[id]);
        
adv_vault_set_field(g_vaultg_fields[FIELD_PASSWORD], g_password[id]);
        
adv_vault_set_end(g_vault0g_pj[id]);
    }
}
public 
load(id){
    if(!
adv_vault_get_prepare(g_vault_g_pj[id]) || !is_user_connected(id))    return;
    
g_points[id] = adv_vault_get_field(g_vaultg_fields[FIELD_POINTS]);



Si esta bien lo que puso K-. entonces nose porque no me anda Triste Ayuda
Responder
#8
saca la public de "client_connect" // osea elimina la public , toda!

y en "public_putinserver" dejalo así :

Código PHP:
public client_putinserver(id)
{
    
g_login[id] = false;
    
get_user_name(idg_pj[id], 31);
    
set_task(60.0"sacar"id+TASK_KICK")
    client_print(id, print_chat, "
Tienes 60 Segundos Para %s", !adv_vault_get_prepare(g_vault, _, g_pj[id])?"Registrarse":"Loguearse");


y en el public "sacar" dejalo así :

Código PHP:
public sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id) || g_login[id] == true;) 
    return;
    

    
server_cmd"kick #%i"get_user_userid(id) ) // nose si esta bien :'v lo hiciste vos:B


edit:

quedaria así :

Código PHP:
#include <amxmisc>
#include <fakemeta>
#include <adv_vault>
new g_points[33],g_password[33][20],g_pj[33][32],bool:g_login[33],g_vault,g_msgvgui,g_msgshowmenu;
enum {
    
FIELD_POINTS=0,
    
FIELD_PASSWORD,
    
MAX_FIELDS
}
enum (+= 100)
{
    
TASK_KICK 2000

#define ID_SHOWHUD (taskid - TASK_KICK)

const KEYSMENU = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9);
new 
g_fields[MAX_FIELDS];
public 
plugin_init(){
    
register_plugin("Account System","0.1","LNATIC");
    
register_clcmd("Ingresar_Password""clcmd_log");
    
register_clcmd("Nueva_Password""clcmd_create");
    
register_menu("Account Menu"KEYSMENU"handler_menu");
    
g_msgvgui get_user_msgid("VGUIMenu");
    
g_msgshowmenu get_user_msgid("ShowMenu");
    
register_message(g_msgvgui"message_vguimenu");
    
register_message(g_msgshowmenu"message_vguimenu");
    
register_forward(FM_ClientUserInfoChanged"fw_clientinfo_changed")
    
g_vault adv_vault_open("dr_data"false);
    
g_fields[FIELD_POINTS]    = adv_vault_register_field(g_vault"lifes");
    
g_fields[FIELD_PASSWORD] = adv_vault_register_field(g_vault"pw"DATATYPE_STRING20);
    
adv_vault_init(g_vault);
}
public 
sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id) || g_login[id])
    return;
    

    
server_cmd"kick #%i"get_user_userid(id) )

public 
client_putinserver(id)
{
    
g_login[id] = false;
    
get_user_name(idg_pj[id], 31);
    
set_task(60.0"sacar"id+TASK_KICK)
    
client_print(idprint_chat"Tienes 60 Segundos para %s", !adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");
}
public 
client_disconnect(id){
    
save(id);
    
g_login[id] = false;
}
public 
acc_menu(id){
    new 
menu[60],len 0;
    
len += formatex(menu[len], sizeof menu len"\wSistema de cuentas^n^n");
    
len += formatex(menu[len], sizeof menu len"\r1. \w%s",!adv_vault_get_prepare(g_vault_g_pj[id])?"Registrarse":"Loguearse");
    
show_menu(idKEYSMENUmenu, -1"Account Menu");
    return 
1;
}
public 
handler_menu(id,key){
    if(
key == 0)    adv_vault_get_prepare(g_vault_g_pj[id]) ? client_cmd(id,"messagemode Ingresar_Password") : client_cmd(id,"messagemode Nueva_Password");
    return 
1;
}
public 
message_vguimenu(msgiddestid){
    switch(
g_login[id]){
        case 
0:acc_menu(id);
        case 
1:return 0;
    }
    return 
1;
}
public 
fw_clientinfo_changed(idbuffer){
    if(
is_user_connected(id)){
        if(
g_login[id]){
            static 
oldname[33];
            
engfunc(EngFunc_InfoKeyValuebuffer"name"oldnamesizeof oldname 1);
            if(
equaloldnameg_pjid ])) return FMRES_IGNORED;
            
set_user_info(id"name"g_pj[id]);
            
client_cmd(id"setinfo ^"name^" ^"%s^"",g_pj[id]);
        }
    }
    return 
FMRES_IGNORED;    
}
public 
clcmd_log(id){
    new 
buffer[40];
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    
adv_vault_get_prepare(g_vault_g_pj[id]);
    
adv_vault_get_field(g_vaultg_fields[FIELD_PASSWORD], buffercharsmax(buffer));
    if( 
equal(buffer,g_password[id]) ){
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido de nuevo %s!",g_pj[id]);
        
load(id);
        
join(id);
    }
    else{
        
set_hudmessage(25500, -1.0, -1.006.012.0);
        
client_print(id,print_center,"Password incorrecta.");
    }
}
public 
clcmd_create(id){
    
read_args(g_password[id],charsmax(g_password[])); 
    
remove_quotes(g_password[id]); trim(g_password[id]);
    if( 
equal(g_password[id],"") || contain(g_password[id]," ") != -)    return 1;
    else{
        
g_login[id] = true;
        
set_hudmessage(255255255, -1.0, -1.006.012.0);
        
show_hudmessage(id"Bienvenido %s!",g_pj[id]);
        
save(id);
        
join(id);
    }
    return 
1;
}
public 
join(id){
    
// Jointeam force by RauliTop
    
static teammsg_blockteammsg_block_vguirestorevgui;
    
restore get_pdata_int(id510);
    
vgui restore & (1<<0);
    if (
vguiset_pdata_int(id510restore & ~(1<<0));
    
teammsg_block get_msg_block(g_msgshowmenu);
    
teammsg_block_vgui get_msg_block(g_msgvgui);
    
set_msg_block(g_msgshowmenuBLOCK_ONCE);
    
set_msg_block(g_msgvguiBLOCK_ONCE);
    
engclient_cmd(id"jointeam""5");
    
engclient_cmd(id"joinclass""5");
    
set_msg_block(g_msgshowmenuteammsg_block);
    
set_msg_block(g_msgvguiteammsg_block_vgui);
    if (
vguiset_pdata_int(id510restore);
}
public 
save(id){
    if(
g_login[id]){
        
adv_vault_set_start(g_vault);
        
adv_vault_set_field(g_vaultg_fields[FIELD_POINTS], g_points[id]);
        
adv_vault_set_field(g_vaultg_fields[FIELD_PASSWORD], g_password[id]);
        
adv_vault_set_end(g_vault0g_pj[id]);
    }
}
public 
load(id){
    if(!
adv_vault_get_prepare(g_vault_g_pj[id]) || !is_user_connected(id))    return;
    
g_points[id] = adv_vault_get_field(g_vaultg_fields[FIELD_POINTS]);

(10/10/2014, 06:38 PM)RauliTop escribió:
(10/10/2014, 04:40 PM)ivan escribió: no sabía que se podia poner los iconos gestuales cuando das reputacion negativa/positiva.
ui, peligro...
pronto habrán reputaciones de ivan:
hace muy muy muii DafuqYao mingGenius buenos Thats what she saidtutoriales Proud me encataan Whatever
Responder
#9
Okey cuando llegue del cole lo Pruebo (? Grax
Responder
#10
Código PHP:
public sacar(id)
{
    
id -= TASK_KICK
    
    
if (!is_user_connected(id) || g_login[id] == true)
    {
                
remove_task(id+TASK_KICK)
                return;
    }
    
    
server_cmd("kick #%i"get_user_userid(id))

(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)

(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Responder
#11
No,Un Problema No me aparece El Mensage Print Pero...
Al momento de kickear Kickea a los Bots (? ? es Normal Eso ? O que Onda
Responder
#12
(17/09/2014, 01:41 PM)BotellerosG escribió: No,Un Problema No me aparece El Mensage Print Pero...
Al momento de kickear Kickea a los Bots (? ? es Normal Eso ? O que Onda
Si porque un bot no se registra solo, lo tenes que hacer registrar o le metes
if (is_user_bot(id)) g_login[id] = true;
(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)

(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Responder
#13
Okey Eso es demenos Si lo Pienso poner en Un Server ...
Pero El problema es que Ami No me Kickea Y No Soy un Bot
y Estoy en g_login[id] = false Al estas En Spec y no Estas Logueado / Registrado

Me Puedes ayudar en eso ?

Gracias.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)